JSP数据库连接源代码大全

合集下载

JS代码大全

JS代码大全

JS代码⼤全1. 将彻底屏蔽⿏标右键oncontextmenu="window.event.returnvalue=false"<table border oncontextmenu=return(false)><td>no</table>可⽤于Table2. 取消选取、防⽌复制<body onselectstart="return false">3. 不准粘贴onpaste="return false"4. 防⽌复制oncopy="return false;" oncut="return false;"5. IE地址栏前换成⾃⼰的图标<link rel="Shortcut Icon" href="favicon.ico">6. 可以在收藏夹中显⽰出你的图标<link rel="Bookmark" href="favicon.ico">7. 关闭输⼊法<input style="ime-mode:-Disabled">8. 永远都会带着框架<script language="javascript"><!--if (window == top)top.location.href = "frames.htm"; //frames.htm为框架⽹页// --></script>9. 防⽌被⼈frame<SCRIPT LANGUAGE=javascript><!--if (top.location != self.location)top.location=self.location;// --></SCRIPT>10. ⽹页将不能被另存为<noscript><iframe src=*.html></iframe></noscript>11. 查看⽹页源代码<input type=button value=查看⽹页源代码onclick="window.location = `view-source:`+ /`";>12.删除时确认<a href=`javascript:if(confirm("确实要删除吗?"location="boos.asp?&areyou=删除&page=1"`>删除</a>13. 取得控件的绝对位置//javascript<script language="javascript">function getIE(E){var t=e.offsetTop;var l=e.offsetLeft;while(e=e.offsetParent){t+=e.offsetTop;l+=e.offsetLeft;}alert("top="+t+"/nleft="+l);}</script>//VBScript<script language="VBScript"><!--function getIE()dim t,l,a,bset a=document.all.img1t=document.all.img1.offsetTopl=document.all.img1.offsetLeftwhile a.tagName<>"BODY"set a = a.offsetParentt=t+a.offsetTopl=l+a.offsetLeftwendmsgbox "top="&t&chr(13)&"left="&l,64,"得到控件的位置"end function--></script>14. 光标是停在⽂本框⽂字的最后<script language="javascript">function cc(){var e = event.srcElement;var r =e.createTextRange();r.moveStart(`character`,e.value.length);r.collapse(true);r.select();}</script><input type=text name=text1 value="123" onfocus="cc()">15. 判断上⼀页的来源javascript:document.referrer16. 最⼩化、最⼤化、关闭窗⼝<object id=hh1 classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11"><param name="Command" value="Minimize"></object><object id=hh2 classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11"><param name="Command" value="Maximize"></object><OBJECT id=hh3 classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"><PARAM NAME="Command" value="Close"></OBJECT><input type=button value=最⼩化onclick=hh1.Click()><input type=button value=最⼤化onclick=hh2.Click()><input type=button value=关闭onclick=hh3.Click()>本例适⽤于IE17.屏蔽功能键Shift,Alt,Ctrl<script>function look(){if(event.shiftKey)alert("禁⽌按Shift键!"; //可以换成ALT CTRL}document.onkeydown=look;</script>18. ⽹页不会被缓存<META HTTP-EQUIV="pragma" CONTENT="no-cache"><META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"><META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">或者<META HTTP-EQUIV="expires" CONTENT="0">19.怎样让表单没有凹凸感?<input type=text style="border:1 solid #000000">或<input type=text style="border-left:none; border-right:none; border-top:none; border-bottom: 1 solid #000000"></textarea>20.<div><span>&<layer>的区别?<div>(division)⽤来定义⼤段的页⾯元素,会产⽣转⾏<span>⽤来定义同⼀⾏内的元素,跟<div>的唯⼀区别是不产⽣转⾏<layer>是ns的标记,ie不⽀持,相当于<div>21.让弹出窗⼝总是在最上⾯:<body onblur="this.focus();">22.不要滚动条?让竖条没有:<body style=`overflow:-Scroll;overflow-y:hidden`></body>让横条没有:<body style=`overflow:-Scroll;overflow-x:hidden`></body>两个都去掉?更简单了<body scroll="no"></body>23.怎样去掉图⽚链接点击后,图⽚周围的虚线?<a href="#" onFocus="this.blur()"><img src="logo.jpg" border=0></a>24.电⼦邮件处理提交表单<form name="form1" method="post" action="mailto***@***.com" enctype="text/plain"><input type=submit></form>25.在打开的⼦窗⼝刷新⽗窗⼝的代码⾥如何写?window.opener.location.reload()26.如何设定打开页⾯的⼤⼩<body onload="top.resizeTo(300,200);">打开页⾯的位置<body onload="top.moveBy(300,200);">27.在页⾯中如何加⼊不是满铺的背景图⽚,拉动页⾯时背景图不动<style>body{background-image:url(logo.gif); background-repeat:no-repeat;background-position:center;background-attachment: fixed}</style>28. 检查⼀段字符串是否全由数字组成<script language="javascript"><!--function checkNum(str){return str.match(//D/)==null}alert(checkNum("1232142141"alert(checkNum("123214214a1"// --></script>29. 获得⼀个窗⼝的⼤⼩document.body.clientWidth;document.body.clientHeight30. 怎么判断是否是字符if (/[^/x00-/xff]/g.test(s)) alert("含有汉字";else alert("全是字符";31.TEXTAREA⾃适应⽂字⾏数的多少<textarea rows=1 name=s1 cols=27 onpropertychange="this.style.posHeight=this.scrollHeight"> </textarea>32. ⽇期减去天数等于第⼆个⽇期<script language=javascript>function cc(dd,dadd){//可以加上错误处理var a = new Date(dd)a = a.valueOf()a = a - dadd * 24 * 60 * 60 * 1000a = new Date(A)alert(a.getFullYear() + "年" + (a.getMonth() + 1) + "⽉" + a.getDate() + "⽇"}cc("12/23/2002",2)</script>33. 选择了哪⼀个Radio<HTML><script language="vbscript">function checkme()for each ob in radio1if ob.checked then window.alert ob.valuenextend function</script><BODY><INPUT name="radio1" type="radio" value="style" checked>style<INPUT name="radio1" type="radio" value="barcode">Barcode<INPUT type="button" value="check" onclick="checkme()"></BODY></HTML>34.脚本永不出错<SCRIPT LANGUAGE="javascript"><!-- Hidefunction killErrors() {return true;}window.onerror = killErrors;// --></SCRIPT>35.ENTER键可以让光标移到下⼀个输⼊框<input onkeydown="if(event.keyCode==13)event.keyCode=9">36. 检测某个⽹站的链接速度:把如下代码加⼊<body>区域中:<script language=javascript>tim=1setInterval("tim++",100)b=1var autourl=new Array()autourl[1]="/";autourl[2]=""autourl[3]="/";autourl[4]="/";autourl[5]="/";function butt(){document.write("<form name=autof>"for(var i=1;i<autourl.length;i++)document.write("<input type=text name=txt"+i+" size=10 value=测试中……> =》<input type=text name=url"+i+" size=40> =》<input type=button value=GOonclick=window.open(this.form.url"+i+".value)><br>"document.write("<input type=submit value=刷新></form>"}butt()function auto(url){document.forms[0]["url"+b].value=urlif(tim>200){document.forms[0]["txt"+b].value="链接超时"}else{document.forms[0]["txt"+b].value="时间"+tim/10+"秒"}b++}function run(){for(var i=1;i<autourl.length;i++)document.write("<imgsrc=http://"+autourl+"/"+Math.random()+" width=1 height=1onerror=auto(http://";+autourl+"`)>"}run()</script>37. 各种样式的光标auto :标准光标default :标准箭头hand :⼿形光标wait :等待光标text :I形光标vertical-text :⽔平I形光标no-drop :不可拖动光标not-allowed :⽆效光标help :?帮助光标all-scroll :三⾓⽅向标move :移动标crosshair :⼗字标e-resizen-resizenw-resizew-resizes-resizese-resizesw-resize38.页⾯进⼊和退出的特效进⼊页⾯<meta http-equiv="Page-Enter" content="revealTrans(duration=x, transition=y)">推出页⾯<meta http-equiv="Page-Exit" content="revealTrans(duration=x, transition=y)">这个是页⾯被载⼊和调出时的⼀些特效。

JSP 分页查询关键代码

JSP 分页查询关键代码

JSP 分页查询关键代码1.连接数据库的基类:package mons;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;public class GetConnection {protected Connection conn = null;//连接字符串protected PreparedStatement ps = null;//预编译并存储 SQL 指令protected ResultSet rs = null;//查询结果集private static final String DRIVER ="com.microsoft.sqlserver.jdbc.SQLServerDriver";//加载数据库驱动的字符串private static final String URL ="jdbc:sqlserver://localhost:1433;databaseName=BOOKDB";//连接数据库的字符串private static final String USERNAME = "sa";//数据库用户名private static final String PASSWORD = "accp";//数据库用户密码/***获得数据库连接*@return*/public Connection getConn() {Connection conn = null;try {Class.forName(DRIVER);//加载数据库驱动conn =DriverManager.getConnection(URL,USERNAME,PASSWORD);//连接数据库} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}return conn;}/** 释放资源*/public void closeAll(){try {if(rs != null){rs.close();}if(ps != null){ps.close();}if(conn != null){conn.close();}} catch (SQLException e) {e.printStackTrace();}finally{conn = null;ps = null;rs = null;}}}2.实体类代码:package com.book.entity;public class Book {private int book_id;private String book_name;private String book_num;private String book_author;private double book_price;private String book_synopsis;private String book_publishTime;public String getBook_author() {return book_author;}public void setBook_author(String book_author) { this.book_author = book_author;}public int getBook_id() {return book_id;}public void setBook_id(int book_id) {this.book_id = book_id;}public String getBook_name() {return book_name;}public void setBook_name(String book_name) { this.book_name = book_name;}public String getBook_num() {return book_num;}public void setBook_num(String book_num) { this.book_num = book_num;}public double getBook_price() {return book_price;}public void setBook_price(double book_price) { this.book_price = book_price;}public String getBook_publishTime() {return book_publishTime;}public void setBook_publishTime(String book_publishTime) { this.book_publishTime = book_publishTime;}public String getBook_synopsis() {return book_synopsis;}public void setBook_synopsis(String book_synopsis) { this.book_synopsis = book_synopsis;}}3.分页查询代码:package com.book.pagin;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;import mons.GetConnection;import com.book.entity.Book;public class BookPaginQuery extends GetConnection { private final int PAGEROW = 8;//每页显示的行数private int countRow;//总行数private int countPage;//总页数private int currentlyPage;//当前第几页/***得到总页数*@return*/public int getCountPage() {return countPage;}/***设置总页数*@param countPage*/public void setCountPage() {//通过总行数设置总页数if (this.countRow % this.PAGEROW == 0) {//如果总行数除以每页显示的行数余数为零时,总页数等于它们的商this.countPage = this.countRow / this.PAGEROW;} else {//否则,总页数等于它们的商加1this.countPage = this.countRow / this.PAGEROW + 1;}}/***得到总行数*@return*/public int getCountRow() {return countRow;}/***设置总行数*@param countRow*/public void setCountRow() {//通过聚合函数查询 TBL_BOOK 表中一共有多少条数据,并把值存储到 countRow 中String sql = "SELECT COUNT(*) FROM TBL_BOOK";try {PreparedStatement ps =super.getConn().prepareStatement(sql);ResultSet rs = ps.executeQuery();if (rs.next()) {this.countRow = rs.getInt(1);}} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}/***得到当前页数*@return*/public int getCurrentlyPage() {return currentlyPage;}/***设置当前页数*@param currentlyPage*/public void setCurrentlyPage(int currentlyPage) {this.currentlyPage = currentlyPage;}/***分页查询*@param page当前页数*@return*/public List<Book> myBookPaginQuery(int page){List<Book> bookList = new ArrayList<Book>();int num = (page-1) * this.PAGEROW; //要被排除的行数String sql = "SELECT top("+this.PAGEROW+") * FROM TBL_BOOK WHERE book_id NOT IN (SELECT TOP("+num+") book_id FROM TBL_BOOK)";try {PreparedStatement ps =super.getConn().prepareStatement(sql);//预编译 SQL 指令并把预编译好的 SQL 存储在 PreparedStatement 对象中ResultSet rs = ps.executeQuery(); //执行预编译好的 SQL 指令,并把获得的查询结果集存储在 ResultSet 对象中while(rs.next()) {//通过 while 循环迭代出结果集中的所有数据,并把它们存储在 List<Book> 集合中Book book = new Book();book.setBook_id(rs.getInt("book_id"));book.setBook_name(rs.getString("book_name"));book.setBook_num(rs.getString("book_num"));book.setBook_author(rs.getString("book_author"));book.setBook_price(rs.getDouble("book_price"));book.setBook_synopsis(rs.getString("book_synopsis"));book.setBook_publishTime(rs.getString("book_publishTime"));bookList.add(book);}} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}return bookList;}}4.JSP 页面代码:<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <jsp:directive.page import="com.book.pagin.BookPaginQuery"/><jsp:directive.page import="com.book.entity.Book"/><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>图书信息</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"><!--<link rel="stylesheet" type="text/css" href="styles.css">--></head><body><%request.setCharacterEncoding("UTF-8"); //设置编码集String strPageNum = request.getParameter("pageNum"); //获得当前页数的字符串int pageNum = 1;//把当前页数的字符串转化为数字,如果转化失败,则设置当前页数为 1 ,即首页try{pageNum = Integer.parseInt(strPageNum);} catch (Exception e){pageNum = 1;}BookPaginQuery bookPaginQuery = new BookPaginQuery();//实例化BookPaginQuery 类,得到 bookPaginQuery 对象bookPaginQuery.setCountRow(); //设置总行数bookPaginQuery.setCountPage(); //设置总页数int countPage = bookPaginQuery.getCountPage(); //获得总页数//如果当前页数小于 0 或大于总页数,则把当前页重新设为 1 ,即首页if (pageNum<=0 || pageNum>countPage){pageNum = 1;}bookPaginQuery.setCurrentlyPage(pageNum); //设置当前页int currentlyPage = bookPaginQuery.getCurrentlyPage(); //获得当前页List<Book> bookList = bookPaginQuery.myBookPaginQuery(pageNum); //分页查询if(bookList!=null && bookList.size()>0) {%><table border="1" align="center"><tr><th align="center">图书名称</th><th align="center">图书编号</th><th align="center">作者</th><th align="center">价格</th><th align="center">图书简介</th><th align="center">出版日期</th></tr><%for (int i=0; i<bookList.size(); i++) {Book book = bookList.get(i);%><tr><td width="200"><%=book.getBook_name() %></td><td width="100"><%=book.getBook_num() %></td><td width="50"><%=book.getBook_author() %></td><td width="50"><%=book.getBook_price() %></td><td width="300"><%=book.getBook_synopsis() %></td><tdwidth="100"><%=book.getBook_publishTime().substring(0,10) %></td> </tr>}%><tr><td colspan="6" align="center"><%if(currentlyPage==1){%>共<%=countPage %>页&nbsp;&nbsp;&nbsp;&nbsp;当前第<%=currentlyPage %>页&nbsp;&nbsp;&nbsp;&nbsp;首页&nbsp;&nbsp;&nbsp;&nbsp;上一页&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.jsp?pageNum=<%=currentlyPage+1 %>">下一页</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.jsp?pageNum=<%=countPage %>">尾页</a>&nbsp;&nbsp;&nbsp;&nbsp;<%}else if(currentlyPage==countPage){%>共<%=countPage %>页&nbsp;&nbsp;&nbsp;&nbsp;当前第<%=currentlyPage %>页&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.jsp?pageNum=1">首页</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.jsp?pageNum=<%=currentlyPage-1 %>">上一页</a>&nbsp;&nbsp;&nbsp;&nbsp;下一页&nbsp;&nbsp;&nbsp;&nbsp;尾页&nbsp;&nbsp;&nbsp;&nbsp;<%}else{%>共<%=countPage %>页&nbsp;&nbsp;&nbsp;&nbsp;当前第<%=currentlyPage %>页&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.jsp?pageNum=1">首页</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.jsp?pageNum=<%=currentlyPage-1 %>">上一页</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.jsp?pageNum=<%=currentlyPage+1 %>">下一页</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.jsp?pageNum=<%=countPage %>">尾页</a>&nbsp;&nbsp;&nbsp;&nbsp;<%}%></td></tr></table>}else{%><h2 align="center">对不起,没有相应的信息……</h2> <%}%></body></html>最后效果如下图:点击首页:点击下一页:点击尾页:。

jsp连接数据库代码大全

jsp连接数据库代码大全

jsp连接数据库代码大全时间:2009-07-13 15:47来源:网络作者:编辑点击:68 次我要投稿注册IT家园现在初学jsp的网友常问数据库怎么连接啊,怎么老出错啊?这里写了篇文章供大家参考,其实这种把数据库逻辑全部放在jsp里未必是好的做法,但是有利于初学者学习,所以我就这样做了,当大家学到一定程度的时候,可以考虑用MVC的模式开发。

在练习这些代码的时候,你一定将jdbc的驱动程序放到服务器的类路径里,然后要在数据库里建一个表test,有两个字段比如为test1,test2,可以用下面SQL建create table test(test1 varchar(20),test2 varchar(20)然后向这个表写入一条测试纪录那么现在开始我们的jsp和数据库之旅吧。

一、jsp连接Oracle8/8i/9i数据库(用thin模式)testoracle.jsp如下:<%@ page contentType="text/html;charset=gb2312"%><%@ page import="java.sql.*"%><html><body><%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();String url="jdbc:oracle:thin:@localhost:1521:orcl";//orcl为你的数据库的SIDString user="scott";String password="tiger";Connection conn= DriverManager.getConnection(url,user,password);Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDA TABLE);String sql="select * from test";ResultSet rs=stmt.executeQuery(sql);while(rs.next()) {%>您的第一个字段内容为:<%=rs.getString(1)%>您的第二个字段内容为:<%=rs.getString(2)%><%}%><%out.print("数据库操作成功,恭喜你");%><%rs.close();stmt.close();conn.close();%></body></html>二、jsp连接Sql Server7.0/2000数据库testsqlserver.jsp如下:<%@ page contentType="text/html;charset=gb2312"%><%@ page import="java.sql.*"%><html><body><%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();String url="jdbc:microsoft: sqlserver://localhost:1433;DatabaseName=pubs";//pubs为你的数据库的String user="sa";String password="";Connection conn= DriverManager.getConnection(url,user,password);Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDA TABLE);String sql="select * from test";ResultSet rs=stmt.executeQuery(sql);while(rs.next()) {%>您的第一个字段内容为:<%=rs.getString(1)%>您的第二个字段内容为:<%=rs.getString(2)%><%}%><%out.print("数据库操作成功,恭喜你");%><%rs.close();stmt.close();conn.close();%></body></html>三、jsp连接DB2数据库testdb2.jsp如下:<%@ page contentType="text/html;charset=gb2312"%><%@ page import="java.sql.*"%><html><body><%Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();String url="jdbc: db2://localhost:5000/sample";//sample为你的数据库名String user="admin";String password="";Connection conn= DriverManager.getConnection(url,user,password);Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDA TABLE);String sql="select * from test";ResultSet rs=stmt.executeQuery(sql);while(rs.next()) {%>您的第一个字段内容为:<%=rs.getString(1)%>您的第二个字段内容为:<%=rs.getString(2)%><%}%><%out.print("数据库操作成功,恭喜你");%><%rs.close();stmt.close();conn.close();%></body></html>四、jsp连接Informix数据库testinformix.jsp如下:<%@ page contentType="text/html;charset=gb2312"%><%@ page import="java.sql.*"%><html><body><%Class.forName("rmix.jdbc.IfxDriver").newInstance();String url ="jdbc:informix- sqli://123.45.67.89:1533/testDB:INFORMIXSERVER=myserver;user=testuser;password=testpassword";//testDB为你的数据库名Connection conn= DriverManager.getConnection(url);Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDA TABLE);String sql="select * from test";ResultSet rs=stmt.executeQuery(sql);while(rs.next()) {%>您的第一个字段内容为:<%=rs.getString(1)%>您的第二个字段内容为:<%=rs.getString(2)%><%}%><%out.print("数据库操作成功,恭喜你");%><%rs.close();stmt.close();conn.close();%></body></html>五、jsp连接Sybase数据库testmysql.jsp如下:<%@ page contentType="text/html;charset=gb2312"%><%@ page import="java.sql.*"%><html><body><%Class.forName("com.sybase.jdbc.SybDriver").newInstance();String url =" jdbc:sybase:Tds:localhost:5007/tsdata";//tsdata为你的数据库名Properties sysProps = System.getProperties();SysProps.put("user","userid");SysProps.put("password","user_password");Connection conn= DriverManager.getConnection(url, SysProps);Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDA TABLE);String sql="select * from test";ResultSet rs=stmt.executeQuery(sql);while(rs.next()) {%>您的第一个字段内容为:<%=rs.getString(1)%>您的第二个字段内容为:<%=rs.getString(2)%><%}%><%out.print("数据库操作成功,恭喜你");%><%rs.close();stmt.close();conn.close();%></body></html>六、jsp连接MySQL数据库testmysql.jsp如下:<%@ page contentType="text/html;charset=gb2312"%><%@ page import="java.sql.*"%><html><body><%Class.forName("org.gjt.mm.mysql.Driver").newInstance();String url ="jdbc: mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&characterEncodin g=8859_1"//testDB为你的数据库名Connection conn= DriverManager.getConnection(url);Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDA TABLE);String sql="select * from test";ResultSet rs=stmt.executeQuery(sql);while(rs.next()) {%>您的第一个字段内容为:<%=rs.getString(1)%>您的第二个字段内容为:<%=rs.getString(2)%><%}%><%out.print("数据库操作成功,恭喜你");%><%rs.close();stmt.close();conn.close();%></body></html>七、jsp连接PostgreSQL数据库testmysql.jsp如下:<%@ page contentType="text/html;charset=gb2312"%><%@ page import="java.sql.*"%><html><body><%Class.forName("org.postgresql.Driver").newInstance();String url ="jdbc: postgresql://localhost/soft"//soft为你的数据库名String user="myuser";String password="mypassword";Connection conn= DriverManager.getConnection(url,user,password);Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDA TABLE);String sql="select * from test";ResultSet rs=stmt.executeQuery(sql);while(rs.next()) {%>您的第一个字段内容为:<%=rs.getString(1)%>您的第二个字段内容为:<%=rs.getString(2)%><%}%><%out.print("数据库操作成功,恭喜你");%><%rs.close();stmt.close();conn.close();%></body></html>文章来自: 中国IT在线() 详文参考:/tech/program/other/1132.html。

JSP网上书店开发完整实例(含完整源代码)

JSP网上书店开发完整实例(含完整源代码)

完整的简单jsp网上书店详细实例计算机web编程jsp毕业论文、考试复习资料必备其中包括的详细需求、业务分析、数据库、源代码我们使用JSP和Java Bean来构建一个网上书店。

介绍的例子可以分成两大部分,第一部分是普通程序,用于客户在网上选购图书,第二部分是管理程序,用于在服务器端处理客户的定单。

客户端程序由以下几个部分构成:default.jsp:会员登录界面(首页);checklogon.jsp:检测登录代码和密码是否一致,根据由JavaBean返回的结果显示不同的信息。

BuyerBean:会员的合法性检验所用的Bean;booklist.jsp:给登录会员显示当前书店中可供选择的图书;addcart.jsp:将所选的图书加入购物车;shoppingcart.jsp:查看购物车的内容;本例的数据库采用Access(.MDB数据库),对数据库的访问采用便于理解的JDBC-ODBC方式,在使用本例前先在本地数据库建立一个ODBC数据源:bookstore。

设置步骤如下:(1)在开始->设置->控制面版(Win98、NT4.0)中选取“数据源(ODBC)”;在Win 2000 Professional和Server中分别位于“开始->设置->控制面版->管理工具”和“开始->程序->管理工具”下。

(2)启动“数据源(ODBC)”配置程序,界面如图15-1所示。

图15-1 ODBC数据源管理界面(3)在图15-1中“系统DSN”选项下单击“添加”按钮,来添加一个系统的数据源(DSN),则出现如图15-2所示数据源驱动程序选择界面:图15-2 数据源驱动程序选择界面(4)在图15-2中选择“Microsoft Access Driver (*.mdb)”单击“完成”加载Access数据库的驱动,则出现如图15-3所示数据库ODBC安装界面:图15-3 数据库ODBC安装界面(5)在图15-3中单击“选择(S)…”按钮,启动一个类似资源管理器的界面来选择数据库,如图15-4所示,在图15-4所示的界面中选择bookstore.mdb。

jsp管理系统源码

jsp管理系统源码

jsp管理系统源码JSP管理系统源码是一项用于构建和管理动态网页的技术。

它允许开发人员在Java中嵌入HTML代码,并通过在服务器上运行Java代码生成动态内容。

通过结合JSP和Java代码,可以构建强大且功能丰富的管理系统。

JSP管理系统源码的开发过程需要一定的技术知识和经验。

首先,开发人员需要掌握Java编程语言和JavaWeb开发的基本概念。

其次,他们需要了解JSP的语法和标签,以及如何在JSP文件中嵌入Java代码。

此外,他们还需要学习如何与数据库进行交互,以便存储和检索数据。

JSP管理系统源码通常由多个组件组成,包括前端界面、后端逻辑和数据库。

前端界面是用户与系统进行交互的地方,它呈现数据和提供操作选项。

开发人员可以使用HTML和CSS来设计和布局前端界面,通过JSP标签嵌入动态内容。

后端逻辑是处理用户请求并执行相应操作的地方,例如验证用户身份、查询数据库和生成动态页面。

开发人员可以使用Java编写后端逻辑,并通过JSP标签将其嵌入到JSP文件中。

数据库用于存储和检索数据,开发人员可以使用SQL语句与数据库进行交互。

在开发JSP管理系统源码时,开发人员应遵循良好的编程实践和安全性原则。

他们应该对用户输入进行验证和过滤,以防止潜在的安全漏洞,如SQL注入和跨站脚本攻击。

此外,他们还应使用适当的身份验证和授权机制来保护系统的敏感功能和数据。

JSP管理系统源码可以用于各种各样的应用,例如学生管理系统、图书管理系统、库存管理系统等。

根据具体的需求和功能,开发人员可以进一步扩展和定制源码,以满足特定的业务需求。

总之,JSP管理系统源码是一种强大而灵活的技术,用于构建和管理动态网页。

开发人员可以利用JSP的特性和Java的功能,创建功能丰富且安全可靠的管理系统。

但是,为了开发出高质量的源码,开发人员需要具备相关的技术知识和经验,并遵循编程实践和安全性原则。

只有这样,我们才能开发出满足用户需求的优秀JSP管理系统源码。

JSP和数据库连接写一个网页登陆注册代码

JSP和数据库连接写一个网页登陆注册代码

文件名称123.jsp<%@ page language="java" import="java.util.*,java.sql.*"pageEncoding="GB2312" contentType="text/html"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><script language="javascript">function on_submit(){if(ername.value==""){alert("用户名不能为空,请输入用户名!");ername.focus();return false;}if(erpassword.value==""){alert("密码不能为空!请输入密码!");erpassword.focus();return false;}}</script><%String path = request.getContextPath();String basePath =request.getScheme()+"://"+request.getServerName()+":"+request.getServerP ort()+path+"/";%><%!public String codeToString(String str){String s=str;try{byte tempB[]=s.getBytes("ISO-8859-1");s=new String(tempB);return s;}catch(Exception e){return s;}} %><html><head><base href="<%=basePath%>"><title>My JSP '123.jsp' starting page</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><!--<link rel="stylesheet" type="text/css" href="styles.css">--></head><body><form name="form1" action="123.jsp" method="post" onsubmit="return on_submit()">用户名:<input type="text" name="username">密码:<input type="password" name="userpassword"><input type="submit" name="submit" value="提交"></form><br><%out.println("你输入的账户为:"+codeToString(request.getParameter("username")));out.println("你输入的密码为:"+codeToString(request.getParameter("userpassword"))); %><%Statement statement;ResultSet rs;// 加载驱动程序以连接数据库try {Class.forName("com.mysql.jdbc.Driver");Connection connection =DriverManager.getConnection("jdbc:mysql://localhost:3306/hacker", "root", "root");System.out.println("连接成功");statement=connection.createStatement();rs=statement.executeQuery("select password from user where username="+"'"+request.getParameter("username")+"'");if(rs.next()){String bb = rs.getString("password");System.out.println("tongguo");if(request.getParameter("userpassword").equals(bb))out.println("登陆成功");}elseout.println("登陆失败");connection.close();}// 捕获加载驱动程序异常catch (ClassNotFoundException cnfex) {System.err.println("装载JDBC/ODBC 驱动程序失败。

Jsp详解

Jsp详解

Jsp详解1.简介2.Jsp的运行原理3.Jsp的语法1.Jsp模板元素2.Jsp中的脚本表达式3.Jsp中的脚本片段4.Jsp的声明5.Jsp注释6.Jsp指令1.首先我们来看一下page指令的用法2.下面在来看一下include指令3.最后来看一下taglib指令7.Jsp中内置的9个隐式对象8.JSP标签库1.jspinclude标签2.jspforward标签3.jspparam或者jspparams标签4.jspuseBean标签jspsetProperty标签jspgetProperty标签9.Jsp中怎么排查错误简介:JSP全称是JavaServer Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术。

JSP这门技术的最大的特点在于,写jsp就像在写html,但:它相比html而言,html只能为用户提供静态数据,而Jsp技术允许在页面中嵌套java代码,为用户提供动态数据。

相比servlet而言,servlet很难对数据进行排版,而jsp除了可以用java代码产生动态数据的同时,也很容易对数据进行排版。

不管是JSP还是Servlet,虽然都可以用于开发动态web资源。

但由于这2门技术各自的特点,在长期的软件实践中,人们逐渐把servlet作为web应用中的控制器组件来使用,而把JSP技术作为数据显示模板来使用。

其原因为,程序的数据通常要美化后再输出:让jsp既用java代码产生动态数据,又做美化会导致页面难以维护。

让servlet既产生数据,又在里面嵌套html代码美化数据,同样也会导致程序可读性差,难以维护。

因此最好的办法就是根据这两门技术的特点,让它们各自负责各的,servlet只负责响应请求产生数据,并把数据通过转发技术带给jsp,数据的显示jsp来做。

Jsp的运行原理:目标:Web服务器是如何调用并执行一个jsp页面的?Jsp页面中的html排版标签是如何被发送到客户端的?Jsp页面中的java代码服务器是如何执行的?Web服务器在调用jsp时,会给jsp提供一些什么java对象?思考:JSP为什么可以像servlet一样,也可以叫做动态web资源的开发技术?其实Jsp就是一个Servlet,所以我们要先介绍Servlet的相关技术,当我们第一次访问Jsp 的时候,Jsp引擎都会将这个Jsp翻译成一个Servlet,这个文件存放在Tomcat中的work目录中,这里,我们新建一个MyJsp.jsp页面,然后访问以下,我们看一下翻译后的源码:1.<%@ page language="java"import="java.util.*"pageEncoding="utf-8"%>2.3.<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML4.01 Transitional//EN">4.<html>5.<head>6.7.<title>My JSP 'MyJsp.jsp' starting page</title>8.9.</head>10.11.<body>12. This is my JSP page. <br>13.</body>14.</html>1.package org.apache.jsp;2.3.import javax.servlet.*;4.import javax.servlet.http.*;5.import javax.servlet.jsp.*;6.import java.util.*;7.8.public final class MyJsp_jsp extends org.apache.jasper.runtime.HttpJspBase9.implements org.apache.jasper.runtime.JspSourceDependent {10.11.private static final JspFactory _jspxFactory = JspFactory.getDefaultFactory();12.13.private static java.util.List _jspx_dependants;14.15.private javax.el.ExpressionFactory _el_expressionfactory;16.private org.apache.AnnotationProcessor _jsp_annotationprocessor;17.18.public Object getDependants() {19.return _jspx_dependants;20. }21.22.public void _jspInit() {23. _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory();24. _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class .getName());25. }26.27.public void _jspDestroy() {28. }29.30.public void _jspService(HttpServletRequest request, HttpServletResponse response)31.throws java.io.IOException, ServletException {32.33. PageContext pageContext = null;34. HttpSession session = null;35. ServletContext application = null;36. ServletConfig config = null;37. JspWriter out = null;38. Object page = this;39. JspWriter _jspx_out = null;40. PageContext _jspx_page_context = null;41.42.43.try {44. response.setContentType("text/html;charset=utf-8");45. pageContext = _jspxFactory.getPageContext(this, request, response,46.null, true, 8192, true);47. _jspx_page_context = pageContext;48. application = pageContext.getServletContext();49. config = pageContext.getServletConfig();50. session = pageContext.getSession();51. out = pageContext.getOut();52. _jspx_out = out;53.54. out.write("\r\n");55. out.write("\r\n");56. out.write("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\r\n");57. out.write("<html>\r\n");58. out.write(" <head>\r\n");59. out.write(" \r\n");60. out.write(" <title>My JSP 'MyJsp.jsp' starting page</title>\r\n");61. out.write(" \r\n");62. out.write(" </head>\r\n");63. out.write(" \r\n");64. out.write(" <body>\r\n");65. out.write(" This is my JSP page. <br>\r\n");66. out.write(" </body>\r\n");67. out.write("</html>\r\n");68. } catch (Throwable t) {69.if (!(t instanceof SkipPageException)){70. out = _jspx_out;71.if (out != null && out.getBufferSize() != 0)72.try { out.clearBuffer(); } catch (java.io.IOException e) {}73.if (_jspx_page_context != null) _jspx_page_context.handlePageException(t);74. }75. } finally {76. _jspxFactory.releasePageContext(_jspx_page_context);77. }78. }79.}我们看到,这个类继承了org.apache.jasper.runtime.HttpJspBase,要想看到这个类的源码,我1./*2. * Licensed to the Apache Software Foundation (ASF) under one or more3. * contributor license agreements. See the NOTICE file distributed with4. * this work for additional information regarding copyright ownership.5. * The ASF licenses this file to You under the Apache License, Version 2.06. * (the "License"); you may not use this file except in compliance with7. * the License. You may obtain a copy of the License at8. *9. * /licenses/LICENSE-2.010. *11. * Unless required by applicable law or agreed to in writing, software12. * distributed under the License is distributed on an "AS IS" BASIS,13. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.14. * See the License for the specific language governing permissions and15. * limitations under the License.16. */17.18.package org.apache.jasper.runtime;19.20.import java.io.IOException;21.22.import javax.servlet.ServletConfig;23.import javax.servlet.ServletException;24.import javax.servlet.http.HttpServlet;25.import javax.servlet.http.HttpServletRequest;26.import javax.servlet.http.HttpServletResponse;27.import javax.servlet.jsp.HttpJspPage;28.import javax.servlet.jsp.JspFactory;29.30.import piler.Localizer;31.32./**33. * This is the super class of all JSP-generated servlets.34. *35. * @author Anil K. Vijendran36. */37.public abstract class HttpJspBase38.extends HttpServlet39.implements HttpJspPage40.41.42.{43.44.protected HttpJspBase() {45. }46.47.public final void init(ServletConfig config)48.throws ServletException49. {50.super.init(config);51. jspInit();52. _jspInit();53. }54.55.public String getServletInfo() {56.return Localizer.getMessage("");57. }58.59.public final void destroy() {60. jspDestroy();61. _jspDestroy();62. }63.64./**65. * Entry point into service.66. */67.public final void service(HttpServletRequest request, HttpServletResponse response)68.throws ServletException, IOException69. {70. _jspService(request, response);71. }72.73.public void jspInit() {74. }75.76.public void _jspInit() {77. }78.79.public void jspDestroy() {80. }81.82.protected void _jspDestroy() {83. }84.85.public abstract void _jspService(HttpServletRequest request,86. HttpServletResponse response)87.throws ServletException, IOException;88.}好吧,看到了,继承了HttpServlet类,所以说其实Jsp就是一个ServletJsp的语法:1.JSP模版元素2.JSP表达式3.JSP脚本片段4.JSP注释5.JSP指令6.JSP标签7.JSP内置对象8.如何查找JSP页面中的错误Jsp模板元素JSP页面中的HTML内容称之为JSP模版元素。

JSP下载文件源代码

JSP下载文件源代码
jsp下载全攻略
1、下载链接页面download.html
页面源码如下:
<!--
文件名:download.html
-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
m_contentDisposition + " filename=" +
toUtf8String(getFileName(s)));
else
if(s2.length() == 0)
m_response.setHeader("Content-Disposition",
m_contentDisposition);
else
if(s1.length() == 0)
m_response.setContentType("application/x-msdownload");
else
m_response.setContentType(s1);
m_response.setContentLength((int)l);
<title>下载</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<a href="jsp/do_download.jsp">点击下载</a>
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档