版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选文档1407064201 柴琪飞试验一:JDBC 实践(增删改查)package com.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; = string1;this.age = i;this.pre = string2;pu
2、blic int getId() return id;public void setId(int id) this.id = id;public String getName() return name;public void setName(String 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
3、= pre;Overridepublic String toString() return Person id= + id + , name= + name + , age= + age+ , pre= + pre + ;package com.shi.dao;import java.sql.SQLException;import java.util.List;import com.shi.domain.*;public interface PersonDao public void add(Person p) throws SQLException;public void update(Pe
4、rson p)throws SQLException;public void delete(int id)throws SQLException;public Person findById(int id)throws SQLException;public List findAll()throws SQLException;package com.shi.dao.impl;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;import
5、com.shi.base.ResultSetHandler;import com.shi.dao.PersonDao;import com.shi.domain.Person;import com.util.db.JdbcTemplete;public class PersonDaoImpl implements PersonDao private JdbcTemplete jdbcTemplete; public PersonDaoImpl() this.jdbcTemplete = new JdbcTemplete(); /添加 Override public void add(Perso
6、n p) throws SQLException String 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 SQLException
7、String sql = update student set name=?,age=?,pre=? where id=?; this.jdbcTemplete.update(sql, p.getName(),p.getAge(),p.getPre(),p.getId(); /删除 Override public void delete(int id) throws SQLException String sql = delete from student where id=?; this.jdbcTemplete.update(sql, id); public Person findById
8、(final int id) throws SQLException String sql = select name,age,pre from student where id=?;return (Person)this.jdbcTemplete.query(sql, new ResultSetHandler() public Object doHandler(ResultSet rs)throws SQLException Person p = null; if(rs.next() p = new Person(); p.setId(id); p.setName(rs.getString(
9、1); p.setAge(rs.getInt(2); p.setPre(rs.getString(3); return p; return null; , id);SuppressWarnings(unchecked)public List findAll() throws SQLException String sql = select id,name,age,pre from student;return (List)this.jdbcTemplete.query(sql, new ResultSetHandler() public Object doHandler(ResultSet r
10、s) throws SQLException finalList persons = new ArrayList();Person p = null;while(rs.next()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 com.shi.base;import java.sql.ResultSet;import java.sql.
11、SQLException;public interface ResultSetHandlerpublic Object doHandler(ResultSet rs) throws SQLException;package com.util.db;import java.sql.*;import com.mysql.jdbc.Connection;import java.util.ResourceBundle;public class DBUtilds public final static String URL;public final static String USERNAME;publ
12、ic final static String PASSWORD ;public final static String DRIVER;private DBUtilds() /定义私有构造方法/利用绑定private static ResourceBundle rb =ResourceBundle.getBundle(com.util.db.dbconfig);staticURL = rb.getString(jdbc.url);USERNAME = rb.getString(jdbc.username);PASSWORD = rb.getString(jdbc.password);DRIVER
13、 = rb.getString(jdbc.driver);try Class.forName(DRIVER); catch (ClassNotFoundException e) e.printStackTrace();/*static /使用静态块加载驱动程try Class.forName(DRIVER); catch (ClassNotFoundException e) / TODO Auto-generated catch blocke.printStackTrace();*/public static Connection getConnection()/连接Connection co
14、nn = null;try conn = (Connection) DriverManager.getConnection(URL, USERNAME, PASSWORD); catch (SQLException 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.clo
15、se();if (state!=null) state.close();if (conn!=null) conn.close(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();package com.util.db;import java.sql.ResultSet;import java.sql.SQLException;import com.util.db.DBUtilds;import com.mysql.jdbc.Connection;import com.mysql.jdbc.
16、PreparedStatement;import com.shi.base.ResultSetHandler;public class JdbcTemplete public int update(String sql, Object.args)throws SQLException/ 在JdbcTemplete类Connection conn = null;PreparedStatement ps = null;tryconn = DBUtilds.getConnection();ps = (PreparedStatement) conn.prepareStatement(sql);/设置占
17、位符的参数if(args!=null)for (int i = 0; i args.length; i+) ps.setObject(i+1, argsi); return ps.executeUpdate();catch(SQLException e)e.printStackTrace();return -1;finallyDBUtilds.close(null, ps, conn);public Object query(String sql,ResultSetHandler handler,Object.args)throws SQLExceptionConnection conn =
18、null;PreparedStatement ps = null;ResultSet rs = null;try conn = DBUtilds.getConnection();ps = (PreparedStatement) conn.prepareStatement(sql);if(args!=null)for (int i = 0; i args.length; i+) ps.setObject(i+1, argsi);rs = ps.executeQuery();return handler.doHandler(rs); catch (SQLException e) e.printSt
19、ackTrace();return null;finallyDBUtilds.close(null, ps, conn);Dpertiesjdbc.url=jdbc:mysql:/localhost:3306/odinmsjdbc.username=rootjdbc.password=123456jdbc.driver=com.mysql.jdbc.Driverpackage test;import java.sql.SQLException;import java.util.List;import com.shi.dao.PersonDao;import com.shi
20、.dao.impl.PersonDaoImpl;import com.shi.domain.Person;public class main public static void main(String args) PersonDao 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+)Syste
21、m.out.println(persons.get(i); catch (SQLException e) e.printStackTrace();试验二:JSP+Model1 实践(增删改查)在试验1的基础上,导入mysql驱动的jar包,webroot下增加以下jsp代码index.jsp base href= !-a font-size:50px; text-decoration:none; color:red; a:hover color:blue; background-color:#ffffff; 查看全部同学信息 list.jsp base href= 查询结果 !- % Pers
22、onDao dao = new PersonDaoImpl(); List persons = dao.findAll(); % 同学信息列表 添加同学信息 编号 姓名 年龄 描述 操作 % for(int i = 0; i a href = update.jsp?pid=修改 a href = delete_handler.jsp?pid=删除 delete_handler.jsp base href= 删除同学信息 !- new.jsp base href= 添加同学信息 !- 姓名: 年龄: 描述: new_handler.jsp base href= !- update.jsp bas
23、e href= My JSP update.jsp starting page !- 修改记录 学号:input type = text name = pid value = readonly = readonly/ 姓名:input type = text name = name value = / 年龄:input type = text name = age value = / 描述: update_handler.jsp base href= 修改同学信息 !- 试验三:Servlet+Model2+分页 (增删改查)在试验一基础上增加以下代码package com.shi.servl
24、et;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;import com.shi.base.ResultSetHandler;import com.shi.da
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 售房合同网签合同范例
- 宣传手册合同范例
- 室内刮腻子施工合同范例
- 宾馆临时住房合同范例
- 塑胶地板合同范例
- 小型家居装修合同范例
- 智能家居合同范例
- 与物业签订广告合同范例
- 杀菌内衣采购合同范例
- 单层厂房出售合同范例
- 工程管理基础知识单选题100道及答案
- 我用的短线选股法(此法选股100%成功)
- 2024年人工智能(AI)训练师职业技能鉴定考试题库(浓缩500题)
- 三级公立医院绩效考核微创手术目录(2022版)
- GB/T 15597.1-2024塑料聚甲基丙烯酸甲酯(PMMA)模塑和挤出材料第1部分:命名系统和分类基础
- 2024版招投标合同范本
- 汉字与对外汉语教学智慧树知到期末考试答案章节答案2024年西北师范大学
- 贵州省黔南州2023-2024学年度上学期期末质量监测八年级物理试卷
- 篮球智慧树知到期末考试答案章节答案2024年温州理工学院
- 统计与数据分析基础-形成性考核三(项目6-项目8阶段性测试权重25%)-国开-参考资料
- 中学体育节竞赛规程活动方案
评论
0/150
提交评论