⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 0127.htm

📁 精通struts源码,孙卫琴.经过更新后的,请查收,
💻 HTM
字号:
<html>

<head>
<title>新时代软件教程:操作系统 主页制作 服务器 设计软件 网络技术 编程语言 文字编辑</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style>
<!--
body, table {font-size: 9pt; font-family: 宋体}
a {text-decoration:none}
a:hover {color: red;text-decoration:underline}
.1  {background-color: rgb(245,245,245)}
-->
</style>
</head>
<p align="center"><script src="../../1.js"></script></a>
<p align="center"><big><strong>applet/servlet搭配实质以及jdbc/mysql/servlet编程实例</strong></big></p>
<div align="right">---摘自互联网</div>

<br>1、实质:applet和服务器80端口创建连接,并通过http协议将串传给servlet,servlet执行完后可以向applet发回串,applet进行解析并向客户显示.&nbsp;<br>
<br>
错误:在于tomcat没有玩好,请看看他的使用说明,一般的conf/server.xml可以修改.class的存放目录,当然,你可以创建一个class目录(在tomcat目录下),将你的servletchat放在class目录下。&nbsp;<br>
<br>
2、servlet-jdbc-mysql参考例程&nbsp;<br>
<br>
送交者:&nbsp;hdp&nbsp;于&nbsp;June&nbsp;10,&nbsp;19100&nbsp;19:37:45:&nbsp;<br>
<br>
主文件(servlet):<br>
/**<br>
*&nbsp;Example&nbsp;servlet&nbsp;call&nbsp;native&nbsp;libray,Get&nbsp;info&nbsp;form&nbsp;mysql<br>
*<br>
*&nbsp;@author&nbsp;Mark<br>
*/&nbsp;<br>
<br>
import&nbsp;java.io.*;<br>
import&nbsp;java.text.*;<br>
import&nbsp;java.util.*;<br>
import&nbsp;javax.servlet.*;<br>
import&nbsp;javax.servlet.http.*;&nbsp;<br>
<br>
<br>
public&nbsp;class&nbsp;Getinfo&nbsp;extends&nbsp;HttpServlet&nbsp;{&nbsp;<br>
<br>
<br>
public&nbsp;void&nbsp;doGet(HttpServletRequest&nbsp;request,<br>
HttpServletResponse&nbsp;response)<br>
throws&nbsp;IOException,&nbsp;ServletException<br>
{&nbsp;<br>
<br>
<br>
response.setContentType("text/html;charset=gb2312");&nbsp;<br>
<br>
PrintWriter&nbsp;out&nbsp;=&nbsp;response.getWriter();&nbsp;<br>
<br>
out.println("");<br>
out.println("");<br>
out.println("");&nbsp;<br>
<br>
String&nbsp;title&nbsp;=&nbsp;"帐户查询系统演示";<br>
out.println(""&nbsp;+&nbsp;title&nbsp;+&nbsp;"");<br>
out.println("");<br>
out.println("");&nbsp;<br>
<br>
<br>
String&nbsp;account&nbsp;=&nbsp;request.getParameter("account");<br>
out.println("");<br>
out.println("帐户查询系统演示"&nbsp;+&nbsp;"");<br>
out.println("");<br>
out.println("account:&nbsp;"+account+"");<br>
if&nbsp;(account&nbsp;!=&nbsp;null&nbsp;)<br>
{<br>
String&nbsp;rs="";<br>
try&nbsp;{<br>
web1&nbsp;wb&nbsp;=&nbsp;new&nbsp;web1();<br>
rs&nbsp;=&nbsp;wb.queryaccount(account);<br>
}&nbsp;catch(Exception&nbsp;e){<br>
out.println(e);<br>
}&nbsp;<br>
<br>
out.println("帐号");<br>
out.println("&nbsp;=&nbsp;"&nbsp;+&nbsp;account+"的查询结果");<br>
out.println(rs+"");<br>
account=null;&nbsp;<br>
<br>
}&nbsp;else&nbsp;{<br>
out.println("请输入账号查询");<br>
}<br>
out.println("");<br>
out.print("");<br>
out.println("账号");<br>
out.println("");<br>
out.println("");<br>
out.println("");<br>
out.println("");&nbsp;<br>
<br>
out.println("");<br>
out.println("");<br>
out.println("返回功能选择"&nbsp;+&nbsp;"");<br>
out.println("");&nbsp;<br>
<br>
out.println("");<br>
out.println("");<br>
}&nbsp;<br>
<br>
public&nbsp;void&nbsp;doPost(HttpServletRequest&nbsp;request,<br>
HttpServletResponse&nbsp;response)<br>
throws&nbsp;IOException,&nbsp;ServletException<br>
{<br>
doGet(request,&nbsp;response);<br>
}&nbsp;<br>
<br>
/*<br>
Function:&nbsp;下传信息给Web&nbsp;Browser<br>
Author:&nbsp;Shinging_Sky_Hero,XXX<br>
Date:&nbsp;2000-4-12<br>
Attention:&nbsp;buffer为空时,将产生不可预料的错误<br>
*/<br>
/*<br>
public&nbsp;void&nbsp;sendData(String[]&nbsp;buffer,PrintWriter&nbsp;sender){<br>
int&nbsp;i;<br>
int&nbsp;times=buffer.length;<br>
for(i=0;i/*&nbsp;{<br>
buffer=toGB2312(buffer[i]);<br>
sender.println(buffer[i]);<br>
}<br>
return;<br>
}&nbsp;<br>
<br>
*/<br>
<br>
<br>
/*其中,toGB2312实现如下:<br>
Function:将UNICODE编码转化为GB编码。<br>
Author:&nbsp;Shinging_Sky_Hero,XXX<br>
Date:&nbsp;2000-4-12<br>
Attention:如果S为空或null,将发生不可预料的错误<br>
*/<br>
/*<br>
public&nbsp;static&nbsp;String&nbsp;toGB2312(String&nbsp;s){<br>
try{<br>
CharToByteConverter&nbsp;toByte=CharToByteConverter.getConverter("GB2312");<br>
byte[]&nbsp;orig=toByte.convertAll(s.toCharArray());<br>
char[]&nbsp;dest=new&nbsp;char[orig.length];<br>
for(int&nbsp;i=0;i;&nbsp;dest[i]=(char)(orig[i]&nbsp;&&nbsp;0xFF);<br>
return&nbsp;new&nbsp;String(dest);<br>
}catch(Exception&nbsp;e){<br>
System.out.print(e);<br>
return&nbsp;s;<br>
}<br>
}*/&nbsp;<br>
<br>
}&nbsp;<br>
<br>
连接库类与函数包装:<br>
import&nbsp;java.sql.*;&nbsp;<br>
<br>
public&nbsp;class&nbsp;ConnectDb<br>
{<br>
final&nbsp;static&nbsp;int&nbsp;POOLSIZE&nbsp;=&nbsp;10;<br>
static&nbsp;boolean&nbsp;hasInit&nbsp;=&nbsp;false;<br>
static&nbsp;boolean&nbsp;isFull&nbsp;=&nbsp;false;<br>
//&nbsp;DatabaseConnection<br>
final&nbsp;String&nbsp;jdbcName&nbsp;=&nbsp;"org.gjt.mm.mysql.Driver";<br>
final&nbsp;String&nbsp;dbUrl&nbsp;=&nbsp;"jdbc:mysql://10.80.1.77:3306/mysql?user=root";<br>
static&nbsp;Connection&nbsp;con[]&nbsp;=&nbsp;new&nbsp;Connection[POOLSIZE];<br>
static&nbsp;Statement&nbsp;stmt[]&nbsp;=&nbsp;new&nbsp;Statement[POOLSIZE];<br>
//&nbsp;mark[i]=0&nbsp;---&nbsp;unuseble;&nbsp;mark[i]=1&nbsp;---&nbsp;useble;&nbsp;mark[i]=2&nbsp;---&nbsp;using<br>
static&nbsp;int&nbsp;mark[]&nbsp;=&nbsp;new&nbsp;int[POOLSIZE];&nbsp;<br>
<br>
synchronized&nbsp;public&nbsp;String&nbsp;getRs(String&nbsp;sql)<br>
{<br>
String&nbsp;account[]={"&nbsp;account&nbsp;=&nbsp;","&nbsp;name&nbsp;=&nbsp;","&nbsp;pass&nbsp;=&nbsp;","&nbsp;num&nbsp;=&nbsp;"};&nbsp;<br>
<br>
String&nbsp;s&nbsp;=&nbsp;"";<br>
if(isFull)&nbsp;return&nbsp;null;&nbsp;//&nbsp;无可用连接<br>
if(&nbsp;!hasInit&nbsp;)&nbsp;init();<br>
for(int&nbsp;i=0;i&nbsp;if(&nbsp;mark[i]==1&nbsp;)&nbsp;{&nbsp;//&nbsp;find&nbsp;first&nbsp;useble&nbsp;connection<br>
mark[i]&nbsp;=&nbsp;2;<br>
try&nbsp;{<br>
debug(sql);<br>
ResultSet&nbsp;rs&nbsp;=&nbsp;stmt[i].executeQuery(sql);<br>
mark[i]&nbsp;=&nbsp;1;<br>
while(&nbsp;rs.next()&nbsp;)&nbsp;{<br>
for(int&nbsp;j=1;j&lt;5;j++)&nbsp;{<br>
s&nbsp;=&nbsp;s&nbsp;+&nbsp;account[j-1]&nbsp;;<br>
s&nbsp;=&nbsp;s&nbsp;+&nbsp;rs.getString(j)&nbsp;+",&nbsp;";<br>
}<br>
s&nbsp;+=&nbsp;";";<br>
}<br>
rs.close();<br>
return&nbsp;s;<br>
}&nbsp;catch(Exception&nbsp;e)&nbsp;{<br>
debug("getRs():"+e);<br>
mark[i]&nbsp;=&nbsp;1;<br>
return&nbsp;null;<br>
}<br>
}<br>
isFull&nbsp;=&nbsp;false;<br>
}<br>
isFull&nbsp;=&nbsp;true;<br>
return&nbsp;null;<br>
}&nbsp;<br>
<br>
private&nbsp;void&nbsp;init()<br>
{<br>
for(int&nbsp;i=0;i&nbsp;for(int&nbsp;i=0;i&nbsp;if(&nbsp;doConnection(i)&nbsp;)&nbsp;mark[i]&nbsp;=&nbsp;1;&nbsp;//&nbsp;if&nbsp;connect&nbsp;ok,<br>
}<br>
debug("init()&nbsp;ok");<br>
}&nbsp;<br>
<br>
private&nbsp;boolean&nbsp;doConnection(int&nbsp;i)<br>
{<br>
try&nbsp;{<br>
Class.forName(jdbcName).newInstance();<br>
con[i]&nbsp;=&nbsp;DriverManager.getConnection(dbUrl);<br>
stmt[i]&nbsp;=&nbsp;con[i].createStatement();<br>
}&nbsp;catch(Exception&nbsp;e){<br>
debug("doConnection():"+e);<br>
return&nbsp;false;<br>
}<br>
return&nbsp;true;<br>
}&nbsp;<br>
<br>
private&nbsp;void&nbsp;debug(String&nbsp;s)<br>
{<br>
System.err.println(s);<br>
System.err.flush();<br>
}&nbsp;<br>
<br>
private&nbsp;void&nbsp;debug(Exception&nbsp;e)<br>
{<br>
System.err.println(e);<br>
System.err.flush();<br>
}&nbsp;<br>
<br>
}&nbsp;<br>
<br>
<br>
//servicename:addaccount,delaccount,queryaccount,modifyaccount<br>
//statement&nbsp;:sql<br>
class&nbsp;web1{&nbsp;<br>
<br>
/********************************************************<br>
**method&nbsp;name&nbsp;:addaccount()<br>
**fuction&nbsp;:add&nbsp;a&nbsp;account&nbsp;to&nbsp;the&nbsp;table<br>
**return&nbsp;:0&nbsp;ok&nbsp;1&nbsp;already&nbsp;have&nbsp;the&nbsp;account&nbsp;or&nbsp;other&nbsp;error<br>
********************************************************/<br>
static&nbsp;ConnectDb&nbsp;con&nbsp;=&nbsp;new&nbsp;ConnectDb();<br>
public&nbsp;String&nbsp;addaccount(String&nbsp;account,String&nbsp;name,String&nbsp;pass,String&nbsp;num)<br>
{<br>
String&nbsp;sql="insert&nbsp;into&nbsp;test.list1&nbsp;values('"+account+"','"+name+"','"+pass+"',"+num+")";<br>
String&nbsp;rs=con.getRs(sql);<br>
rs=con.getRs("select&nbsp;*&nbsp;from&nbsp;test.list1");<br>
return&nbsp;rs;&nbsp;<br>
<br>
}&nbsp;<br>
<br>
/********************************************************<br>
**method&nbsp;name&nbsp;:delaccount()<br>
**fuction&nbsp;:delete&nbsp;a&nbsp;record&nbsp;from&nbsp;table<br>
**return&nbsp;:0&nbsp;ok<br>
**delete&nbsp;from&nbsp;list1&nbsp;where&nbsp;account="account"<br>
********************************************************/&nbsp;<br>
<br>
public&nbsp;String&nbsp;delaccount(String&nbsp;account)<br>
{<br>
String&nbsp;sql="delete&nbsp;from&nbsp;test.list1&nbsp;where&nbsp;account='"+account+"'";<br>
String&nbsp;rs=con.getRs(sql);<br>
rs=con.getRs("select&nbsp;*&nbsp;from&nbsp;test.list1");<br>
return&nbsp;rs;&nbsp;<br>
<br>
}&nbsp;<br>
<br>
/********************************************************<br>
**method&nbsp;name&nbsp;:queryaccount()<br>
**fuction&nbsp;:query&nbsp;a&nbsp;account&nbsp;context&nbsp;by&nbsp;account<br>
**return&nbsp;:0&nbsp;ok<br>
**select&nbsp;*&nbsp;from&nbsp;list1&nbsp;where&nbsp;account="account"<br>
********************************************************/<br>
public&nbsp;String&nbsp;queryaccount(String&nbsp;account)<br>
{<br>
if(account&nbsp;==&nbsp;null)<br>
String&nbsp;sql="select&nbsp;*&nbsp;from&nbsp;test.list1";<br>
else<br>
String&nbsp;sql="select&nbsp;*&nbsp;from&nbsp;test.list1&nbsp;where&nbsp;account='"+account+"'";<br>
String&nbsp;rs=con.getRs(sql);<br>
return&nbsp;rs;&nbsp;<br>
<br>
}&nbsp;<br>
<br>
/********************************************************<br>
**method&nbsp;name&nbsp;:modifyaccount()<br>
**fuction&nbsp;:change&nbsp;a&nbsp;account&nbsp;context&nbsp;by&nbsp;account<br>
**return&nbsp;:0&nbsp;ok<br>
**update&nbsp;list1&nbsp;set&nbsp;name="name",&nbsp;pass="pass",<br>
**num=num&nbsp;where&nbsp;account=account;<br>
********************************************************/<br>
public&nbsp;String&nbsp;modifyaccount(String&nbsp;account,String&nbsp;name,String&nbsp;pass,String&nbsp;num)<br>
{<br>
String&nbsp;sql="update&nbsp;test.list1&nbsp;set&nbsp; name='"+name+"',pass='"+pass+"',account='"+account+"',num="+num+"&nbsp;where&nbsp;account='"+account+"'";<br>
String&nbsp;rs=con.getRs(sql);<br>
rs=con.getRs("select&nbsp;*&nbsp;from&nbsp;test.list1&nbsp;where&nbsp;account='"+account);<br>
return&nbsp;rs;&nbsp;<br>
<br>
}&nbsp;<br>
<br>
}&nbsp;

  </table>
<p align="center"><script src="../../2.js"></script></a>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -