mybatis配置
来源:互联网 发布:历史股价数据 编辑:程序博客网 时间:2024/06/13 08:44
mybatis-config.xml
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration> <properties resource="jdbc.properties" /> <settings> <setting name="lazyLoadingEnabled" value="true" /> <setting name="aggressiveLazyLoading" value="false" /> </settings> <!--设置别名--> <typeAliases> <typeAlias alias="UserInfo" type="com.ldu.po.UserInfo" /> </typeAliases> <!--配置数据库信息--> <environments default="development"> <environment id="mysql"> <transactionManager type="JDBC" /> <dataSource type="POOLED"> <property name="driver" value="${database.driver}" /> <property name="url" value="${database.url}" /> <property name="username" value="${database.username}" /> <property name="password" value="${database.password}" /> </dataSource> </environment> </environments> <mappers> <mapper resource="com/ldu/mapper/userinfo.xml" /> </mappers></configuration>
jdbc.properties
database.driver=com.mysql.jdbc.Driverdatabase.url=jdbc:mysql://127.0.0.1:3306/myssm?useUnicode=true&characterEncoding=utf-8database.username=rootdatabase.password=123456
userinfo.xml
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!--将数据库中的字段和po类中的属性映射--><mapper namespace="com.ldu.mapper.UserInfoMapper"> <!--UserInfo为po类,前面设置了别名--> <resultMap type="UserInfo" id="userMap"> <id property="id" column="user_id"></id> <result property="userName" column="user_name"></result> <result property="sex" column="user_sex"></result> </resultMap> <!--查询所有 --> <!-- <select id="selectUser" resultMap="userMap"> select * from user_info </select> --> <!--条件查询 --> <select id="selectUser" parameterType="UserInfo" resultMap="userMap"> select * from user_info where 1=1 <if test="id!=null"> and user_id = #{id} </if> </select> <!--添加数据 --> <insert id="insertUser" parameterType="UserInfo"> insert into user_info (user_name,user_sex) values(#{userName},#{sex}) </insert> <!--修改数据 --> <update id="updateUser" parameterType="UserInfo"> update user_info set user_name=#{userName},user_sex=#{sex} where user_id=#{id} </update> <!--删除数据 --> <delete id="deleteUser" parameterType="Integer"> delete from user_info where user_id=#{id} </delete>
UserInfoMapper.java
//Mapper接口public interface UserInfoMapper { public List<UserInfo> selectUser(UserInfo user); public int insertUser(UserInfo user); public int updateUser(UserInfo user); public int deleteUser(int id);}
DBFactory.java
产生sqlSession的类
public class DBFactory { private static SqlSessionFactory sqlSessionFactory=null; static{ try { String resource="mybatis-config.xml"; InputStream inputStream=Resources.getResourceAsStream(resource); sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream,"mysql"); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static SqlSessionFactory getSqlSessionFactory(){ return sqlSessionFactory; } public static SqlSession getSqlSession(){ return sqlSessionFactory.openSession(); }}
测试
public class UserInfoTest { SqlSession session=null; UserInfoMapper mapper=null; @Before public void beforeTest(){ session=DBFactory.getSqlSession(); mapper=session.getMapper(UserInfoMapper.class); } @After public void afterTest(){ session.close(); } @Test public void selectList(){ UserInfo fuser=new UserInfo(); fuser.setId(7); List<UserInfo> list = mapper.selectUser(null); for(UserInfo u:list){ System.out.println(u); } } @Test public void addUser(){ UserInfo iuser=new UserInfo(); iuser.setUserName("羽"); iuser.setSex("男"); try { int count =mapper.insertUser(iuser); if(count>0){ session.commit(); System.out.println("插入成功"); } } catch (Exception e) { e.printStackTrace(); session.rollback(); } } @Test public void updateUser(){ UserInfo uuser=new UserInfo(); uuser.setId(6); uuser.setUserName("叶"); uuser.setSex("男"); try { int count=mapper.updateUser(uuser); if(count>0){ session.commit(); System.out.println("修改成功"); } } catch (Exception e) { e.printStackTrace(); session.rollback(); } } @Test public void delUser(){ int id=6; try { int count =mapper.deleteUser(id); if(count>0){ session.commit(); System.out.println("删除成功"); } } catch (Exception e) { session.rollback(); e.printStackTrace(); } }}
阅读全文
0 0
- mybatis配置
- mybatis 配置
- mybatis配置
- mybatis配置
- mybatis----配置
- Mybatis配置
- mybatis配置
- mybatis配置
- mybatis配置
- mybatis配置
- mybatis 配置
- mybatis配置
- myBatis配置
- myBatis配置
- mybatis配置
- mybatis配置
- MyBatis配置
- mybatis配置
- HDU1087 Super Jumping! Jumping! Jumping!
- linux开机启动自动执行某个脚本
- Friend-Graph(暴力枚举)
- 用 Python 实现每秒处理 120 万次 HTTP 请求
- RxJava基础使用
- mybatis配置
- 算法学习之枚举--熄灯问题POJ1222EXTENDED LIGHTS OUT
- ConcurrentModificationException异常及解决方案
- 极角排序学习
- linux常用命令
- linux基础知识回顾
- Longest Valid Parentheses leetcode java
- andriod事件分发机制源码解析
- [LintCode]56.两数之和