java程序中的ibatis连接mySql的基本实例
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java程序中的ibatis连接mySql的基本实例,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含8001字,纯文字阅读大概需要12分钟。
内容图文
属性文件:SqlMap.properties
1 driver=com.mysql.jdbc.Driver 2 url=jdbc:mysql://localhost:3306/ibatis 3 username=root 4 password=gys
SqlMapconfig.xml
<? xml version="1.0" encoding="UTF-8" ?> <! DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-config-2.dtd" > < sqlMapConfig > <!-- 引用jdbc属性的配置文件 --> < properties resource ="com/iflytek/entity/SqlMap.properties" /> <!-- 使用jdbc的事务管理 --> < transactionManager type ="JDBC" > < dataSource type ="SIMPLE" > < property name ="JDBC.Driver" value ="${driver}" /> < property name ="JDBC.ConnectionURL" value ="${url}" /> < property name ="JDBC.Username" value ="${username}" /> < property name ="JDBC.Password" value ="${password}" /> </ dataSource > </ transactionManager > <!-- 这里可以写多个实体的映射文件 --> < sqlMap resource ="com/iflytek/entity/Student.xml" /> </ sqlMapConfig >
Student.xml
1 <? xml version="1.0" encoding="UTF-8" ?> 2 <! DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" 3 "http://ibatis.apache.org/dtd/sql-map-2.dtd" > 4 < sqlMap > 5 <!-- 通过typeAlias使得我们在下面使用Student实体类的时候不需要写包名 --> 6 < typeAlias alias ="Student" type ="com.iflytek.entity.Student" /> 7 <!-- id表示select里的sql语句,resultClass表示返回结果的类型 --> 8 < select id ="selectAllStudent" resultClass ="Student" > 9 select * from tb1_student 10 </ select > 11 < select id ="selectStudentById" parameterClass ="int" resultClass ="Student" > 12 select * from tb1_student where id=#id# 13 </ select > 14 <!-- 注意这里的resultClass类型,使用Student类型取决于queryForList还是queryForObject --> 15 < select id ="selectStudentByName" parameterClass ="String" resultClass ="Student" > 16 select name,birth,score from tb1_student where name like ‘%$name$%‘ 17 </ select > 18 < insert id ="addStudent" parameterClass ="Student" > 19 insert into tb1_student (name,birth,score) values (#name#,#birth#,#score#) 20 < selectKey resultClass ="int" keyProperty ="id" > 21 select @@identity as inserted 22 </ selectKey > 23 </ insert > 24 < delete id ="deleteStudentById" parameterClass ="int" > 25 delete from tb1_student where id=#id# 26 </ delete > 27 < update id ="updateStudent" parameterClass ="Student" > 28 update tb1_student set name=#name#,birth=#birth#,score=#score# where id=#id# 29 </ update > 30 </ sqlMap >
Student.java
1 package com.iflytek.entity; 2 3 import java.sql.Date; 4 5 public class Student { 6 private int id; 7 private String name; 8 private Date birth; 9 private float score; 10 11 public Student(){} 12 13 public int getId() { 14 return id; 15 } 16 public void setId(int id) { 17this.id = id; 18 } 19public String getName() { 20return name; 21 } 22publicvoid setName(String name) { 23this.name = name; 24 } 25public Date getBirth() { 26return birth; 27 } 28publicvoid setBirth(Date birth) { 29this.birth = birth; 30 } 31publicfloat getScore() { 32return score; 33 } 34publicvoid setScore(float score) { 35this.score = score; 36 } 37 @Override 38public String toString(){ 39return "id="+id+"\t name"+name+"\t ajor="+birth+"\t score="+score+"\n"; 40 } 4142 }
IStudentDao.java
1 package com.iflytek.dao; 2 3 import java.util.List; 4 5 import com.iflytek.entity.Student; 6 7 public interface IStudentDao { 8 /* 9 * 添加学生信息 10 */ 11 public boolean addStudent(Student student); 12 /* 13 * 根据id删除学生信息 14 */ 15 public boolean deleteStudentById(int id); 16/*17 * 更新学生信息 18*/19publicboolean updateStudent(Student student); 20/*21 * 查询全部学生信息 22*/23public List<Student> selectAllStudent(); 2425/*26 * 根据学生姓名模糊查询学生信息 27*/28public List<Student> selectStudentByName(String name); 29/*30 * 根据学生id查询学生信息 31*/32public Student selectStudentById(int id); 3334 }
StudentDaoImpl.java
1 package com.iflytek.daoimpl; 2 3 import java.io.IOException; 4 import java.io.Reader; 5 import java.sql.SQLException; 6 import java.util.List; 7 8 import com.ibatis.common.resources.Resources; 9 import com.ibatis.sqlmap.client.SqlMapClient; 10 import com.ibatis.sqlmap.client.SqlMapClientBuilder; 11 import com.iflytek.dao.IStudentDao; 12 import com.iflytek.entity.Student; 13 14 public class StudentDaoImpl implements IStudentDao { 15privatestatic SqlMapClient sqlMapClient = null; 16 17// 读取配置文件 18static { 19try { 20 Reader reader = Resources.getResourceAsReader("com/iflytek/entity/SqlMapConfig.xml"); 21 sqlMapClient = SqlMapClientBuilder.buildSqlMapClient(reader); 22 reader.close(); 23 } catch (IOException e) { 24 e.printStackTrace(); 25 } 26 } 27 28publicboolean addStudent(Student student) { 29 Object object = null; 30boolean flag = false; 31try { 32 object = sqlMapClient.insert("addStudent", student); 33 System.out.println("添加学生信息的返回值:" + object); 34 } catch (SQLException e) { 35 e.printStackTrace(); 36 } 37if (object != null) { 38 flag = true; 39 } 40return flag; 41 } 42 43publicboolean deleteStudentById(int id) { 44boolean flag = false; 45 Object object = null; 46try { 47 object = sqlMapClient.delete("deleteStudentById", id); 48 System.out.println("删除学生信息的返回值:" + object + ",这里返回的是影响的函数"); 49 } catch (SQLException e) { 50// TODO Auto-generated catch block 51 e.printStackTrace(); 52 } 53if (object != null) { 54 flag = true; 55 } 56return flag; 57 } 58 59publicboolean updateStudent(Student student) { 60boolean flag = false; 61 Object object = false; 62try { 63 object = sqlMapClient.update("updateStudent", student); 64 System.out.println("更新学生信息的返回值:" + object + ",返回影响的行数"); 65 } catch (SQLException e) { 66 e.printStackTrace(); 67 } 68if(object!=null){ 69 flag=true; 70 } 71return flag; 72 } 73 74public List<Student> selectAllStudent() { 75 List<Student> students=null; 76try { 77 students=sqlMapClient.queryForList("selectAllStudent"); 78 } catch (SQLException e) { 79// TODO Auto-generated catch block 80 e.printStackTrace(); 81 } 82return students; 83 } 84 85public List<Student> selectStudentByName(String name) { 86 List<Student> students=null; 87try { 88 students=sqlMapClient.queryForList("selectStudentByName", name); 89 } catch (SQLException e) { 90 e.printStackTrace(); 91 } 92return students; 93 } 94 95public Student selectStudentById(int id) { 96 Student student=null; 97try { 98 student=(Student)sqlMapClient.queryForObject("selectStudentById",id); 99 } catch (SQLException e) { 100 e.printStackTrace(); 101 } 102return student; 103 } 104105 }
TestIbatis.java
1 package com.iflytek.test; 2 3 import java.sql.Date; 4 import java.util.List; 5 6 import com.iflytek.daoimpl.StudentDaoImpl; 7 import com.iflytek.entity.Student; 8 9 public class TestIbatis { 10 public static void main(String[] args) { 11 StudentDaoImpl studentDaoImpl=new StudentDaoImpl(); 1213//测试插入14 Student addStudent=new Student(); 15 addStudent.setName("李四"); 16 addStudent.setBirth(Date.valueOf("2011-09-02")); 17 addStudent.setScore(88); 18 System.out.println(studentDaoImpl.addStudent(addStudent)); 1920 addStudent.setName("李四2"); 21 addStudent.setBirth(Date.valueOf("1990-09-02")); 22 addStudent.setScore(98); 23 System.out.println(studentDaoImpl.addStudent(addStudent)); 24//根据Id查询25 System.out.println(studentDaoImpl.selectStudentById(2)); 2627//根据姓名查询28 List<Student> list=studentDaoImpl.selectStudentByName("四"); 29for(Student student:list){ 30 System.out.println(student); 31 } 3233//查询所有34 List<Student> list=studentDaoImpl.selectAllStudent(); 35for(Student student:list){ 36 System.out.println(student); 37 } 3839//更新信息40 Student updateStudent=new Student(); 41 updateStudent.setId(1); 42 updateStudent.setName("李四1+"); 43 updateStudent.setBirth(Date.valueOf("1990-09-07")); 44 updateStudent.setScore(24); 45 System.out.println(studentDaoImpl.updateStudent(updateStudent)); 4647//删除数据48 Boolean b=studentDaoImpl.deleteStudentById(1); 49 System.out.println("删除结果:"+b); 5051 } 52 }
原文:http://www.cnblogs.com/guoyansi19900907/p/4340472.html
内容总结
以上是互联网集市为您收集整理的java程序中的ibatis连接mySql的基本实例全部内容,希望文章能够帮你解决java程序中的ibatis连接mySql的基本实例所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。