java实验代码

上传人:仙*** 文档编号:89282361 上传时间:2022-05-12 格式:DOC 页数:35 大小:126.50KB
收藏 版权申诉 举报 下载
java实验代码_第1页
第1页 / 共35页
java实验代码_第2页
第2页 / 共35页
java实验代码_第3页
第3页 / 共35页
资源描述:

《java实验代码》由会员分享,可在线阅读,更多相关《java实验代码(35页珍藏版)》请在装配图网上搜索。

1、-1407064201 柴琪飞实验一:JDBC 实践(增删改查)package .shi.domain;public class Person private int id;private String name;private int age;private String pre;public Person()/构造函数super();public Person(int j,String string1, int i, String string2)this.id = j;this.name = string1;this.age = i;this.pre = string2;public i

2、nt getId() return id;public void setId(int id) this.id = id;public String getName() return name;public void setName(String name) this.name = name;public int getAge() return age;public void setAge(int age) this.age = age;public String getPre() return pre;public void setPre(String pre) this.pre = pre;

3、Overridepublic String toString() return Person id= + id + , name= + name + , age= + age+ , pre= + pre + ;package .shi.dao;import java.sql.SQLE*ception;import java.util.List;import .shi.domain.*;public interface PersonDao public void add(Person p) throws SQLE*ception;public void update(Person p)throw

4、s SQLE*ception;public void delete(int id)throws SQLE*ception;public Person findById(int id)throws SQLE*ception;public List findAll()throws SQLE*ception;package .shi.dao.impl;import java.sql.ResultSet;import java.sql.SQLE*ception;import java.util.ArrayList;import java.util.List;import .shi.base.Resul

5、tSetHandler;import .shi.dao.PersonDao;import .shi.domain.Person;import .util.db.JdbcTemplete;public class PersonDaoImpl implements PersonDao private JdbcTemplete jdbcTemplete; public PersonDaoImpl() this.jdbcTemplete = new JdbcTemplete(); /添加 Override public void add(Person p) throws SQLE*ception St

6、ring sql = insert into student(id,name,age,pre)values(,); this.jdbcTemplete.update(sql, p.getId(),p.getName(),p.getAge(),p.getPre(); /String sql = insert into person(name,age,pre)values(小白,18,一个猥琐但不下流的人); /更新 Override public void update(Person p) throws SQLE*ception String sql = update student set n

7、ame=,age=,pre= where id=; this.jdbcTemplete.update(sql, p.getName(),p.getAge(),p.getPre(),p.getId(); /删除 Override public void delete(int id) throws SQLE*ception String sql = delete from student where id=; this.jdbcTemplete.update(sql, id); public Person findById(final int id) throws SQLE*ception Str

8、ing sql = select name,age,pre from student where id=;return (Person)this.jdbcTemplete.query(sql, new ResultSetHandler() public Object doHandler(ResultSet rs)throws SQLE*ception Person p = null; if(rs.ne*t() p = new Person(); p.setId(id); p.setName(rs.getString(1); p.setAge(rs.getInt(2); p.setPre(rs.

9、getString(3); return p; return null; , id);SuppressWarnings(unchecked)public List findAll() throws SQLE*ception String sql = select id,name,age,pre from student;return (List)this.jdbcTemplete.query(sql, new ResultSetHandler() public Object doHandler(ResultSet rs) throws SQLE*ception finalList person

10、s = new ArrayList();Person p = null;while(rs.ne*t()p = new Person(); p.setId(rs.getInt(1);p.setName(rs.getString(2);p.setAge(rs.getInt(3);p.setPre(rs.getString(4); persons.add(p);return persons; );package .shi.base;import java.sql.ResultSet;import java.sql.SQLE*ception;public interface ResultSetHand

11、lerpublic Object doHandler(ResultSet rs) throws SQLE*ception;package .util.db;import java.sql.*;import .mysql.jdbc.Connection;import java.util.ResourceBundle;public class DBUtilds public final static String URL;public final static String USERNAME;public final static String PASSWORD ;public final sta

12、tic String DRIVER;private DBUtilds() /定义私有构造方法/利用绑定private static ResourceBundle rb =ResourceBundle.getBundle(.util.db.dbconfig);staticURL = rb.getString(jdbc.url);USERNAME = rb.getString(jdbc.username);PASSWORD = rb.getString(jdbc.password);DRIVER = rb.getString(jdbc.driver);try Class.forName(DRIVE

13、R); catch (ClassNotFoundE*ception e) e.printStackTrace();/*static /使用静态块加载驱动程try Class.forName(DRIVER); catch (ClassNotFoundE*ception e) / TODO Auto-generated catch blocke.printStackTrace();*/public static Connection getConnection()/连接Connection conn = null;try conn = (Connection) DriverManager.getC

14、onnection(URL, USERNAME, PASSWORD); catch (SQLE*ception e) / TODO Auto-generated catch blocke.printStackTrace();System.out.println(shibai);return conn;public static void close(ResultSet rs,Statement state,Connection conn)/关闭try if (rs!=null) rs.close();if (state!=null) state.close();if (conn!=null)

15、conn.close(); catch (SQLE*ception e) / TODO Auto-generated catch blocke.printStackTrace();package .util.db;import java.sql.ResultSet;import java.sql.SQLE*ception;import .util.db.DBUtilds;import .mysql.jdbc.Connection;import .mysql.jdbc.PreparedStatement;import .shi.base.ResultSetHandler;public class

16、 JdbcTemplete public int update(String sql, Object.args)throws SQLE*ception/ 在JdbcTemplete类Connection conn = null;PreparedStatement ps = null;tryconn = DBUtilds.getConnection();ps = (PreparedStatement) conn.prepareStatement(sql);/设置占位符的参数if(args!=null)for (int i = 0; i args.length; i+) ps.setObject(

17、i+1, argsi); return ps.e*ecuteUpdate();catch(SQLE*ception e)e.printStackTrace();return -1;finallyDBUtilds.close(null, ps, conn);public Object query(String sql,ResultSetHandler handler,Object.args)throws SQLE*ceptionConnection conn = null;PreparedStatement ps = null;ResultSet rs = null;try conn = DBU

18、tilds.getConnection();ps = (PreparedStatement) conn.prepareStatement(sql);if(args!=null)for (int i = 0; i args.length; i+) ps.setObject(i+1, argsi);rs = ps.e*ecuteQuery();return handler.doHandler(rs); catch (SQLE*ception e) e.printStackTrace();return null;finallyDBUtilds.close(null, ps, conn);Dbconf

19、ig.propertiesjdbc.url=jdbc:mysql:/localhost:3306/odinmsjdbc.username=rootjdbc.password=123456package test;import java.sql.SQLE*ception;import java.util.List;import .shi.dao.PersonDao;import .shi.dao.impl.PersonDaoImpl;import .shi.domain.Person;public class main public static void main(String args) P

20、ersonDao dao = new PersonDaoImpl();try dao.add(new Person(13,小黑,30,黑色);Person p = dao.findById(2);/System.out.println(p);List persons = dao.findAll();for(int i = 0; i persons.size(); i+)System.out.println(persons.get(i); catch (SQLE*ception e) e.printStackTrace();实验二:JSP+Model1 实践(增删改查)在实验1的基础上,导入my

21、sql驱动的jar包,webroot下增加以下jsp代码inde*.jsp base href= !-a font-size:50p*; te*t-decoration:none; color:red; a:hover color:blue; background-color:#ffffff; 查看所有学生信息 list.jsp base href= 查询结果 !- % PersonDao dao = new PersonDaoImpl(); List persons = dao.findAll(); % 学生信息列表 添加学生信息 编号 年龄 描述 操作 % for(int i = 0; i

22、 a href = update.jsppid=修改 a href = delete_handler.jsppid=删除 delete_handler.jsp base href= 删除学生信息 !- new.jsp base href= 添加学生信息 !- :年龄:描述: new_handler.jsp base href= !- update.jsp base href= My JSP update.jsp starting page !- 修改记录 *:input type = te*t name = pid value = readonly = readonly/ :input typ

23、e = te*t name = name value = /年龄:input type = te*t name = age value = /描述: update_handler.jsp base href= 修改学生信息 !- 实验三:Servlet+Model2+分页(增删改查)在实验一基础上增加以下代码package .shi.servlet;import java.io.IOE*ception;import java.io.PrintWriter;import java*.servlet.ServletE*ception;import java*.servlet.http.HttpSe

24、rvlet;import java*.servlet.http.HttpServletRequest;import java*.servlet.http.HttpServletResponse;import java.sql.ResultSet;import java.sql.SQLE*ception;import java.util.ArrayList;import java.util.List;import .shi.base.ResultSetHandler;import .shi.dao.PersonDao;import .shi.dao.impl.PersonDaoImpl;impo

25、rt .shi.domain.Person;import .util.db.JdbcTemplete;import .vince.base.PageRoll;public class PersonServlet e*tends HttpServlet public PersonServlet() super();public void destroy() super.destroy();public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletE*ception, IOE

26、*ceptionrequest.setCharacterEncoding(UTF-8);response.setCharacterEncoding(UTF-8);String method = request.getParameter(method);if(findAll.equals(method)findAll(request,response);else if(findById.equals(method)findById(request,response);else if(update.equals(method)update(request,response);else if(add

27、.equals(method)add(request,response);else if(delete.equals(method)delete(request,response);else if(list.equals(method)list(request,response);public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletE*ception, IOE*ceptiondoPost(request,response);public void init() throws ServletE*ception / Put your code herepublic void list(HttpServletRequest request, HttpServletResponse response) throws ServletE*ception, IOE*ceptionString currPage = request.getParameter(currPage);/构造分页组件PageRoll pageRoll = new PageRoll();if(currPage != null)pageRoll.setCu

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!