public int getAllUserCount();//一共有多少条数据
//一共有多少条数据
@Test
public void testGetAllUserCount() throws Exception {
int count = userDao.getAllUserCount();
System.out.println(count);
}
<!--一共有多少条数据-->
<select id="getAllUserCount" resultType="int">
select count(*) from jdbc
</select>
//一共有多少条数据
@Override
public int getAllUserCount() {
int count = 0;
SqlSession sqlSession = null;
try {
sqlSession = MyBatisUtil.getSqlSession();
count = sqlSession.getMapper(IUserDao.class).getAllUserCount();
}finally{
MyBatisUtil.closeSqlSession(sqlSession);
}
return count;
}
//带参数id2的姓名
@Test
public void testGetUsernameByUserid() throws Exception {
String username = userDao.getUsernameByUserid(2);
System.out.println(username);
}
public String getUsernameByUserid(int userid);//带参数id2的姓名
<!--带参数id2的姓名-->
<select id="getUsernameByUserid" resultType="String">
<!-- 一个参数的时候形参随便写,字符串除外
select username from user where userId = #{aa}
-->
select username from jdbc where userid = #{userid}
</select>
//带参数id2的姓名
@Override
public String getUsernameByUserid(int userid) {
String username = null;
SqlSession sqlSession = null;
try {
sqlSession = MyBatisUtil.getSqlSession();
username = sqlSession.getMapper(IUserDao.class).getUsernameByUserid(userid);
}finally{
MyBatisUtil.closeSqlSession(sqlSession);
}
return username;
}
//查询姓名和密码匹配的user
@Test
public void testGetUserByMap() throws Exception {
Map<String, Object> map = new HashMap<String, Object>();
map.put("username", "123");
map.put("password", "123");
User user = userDao.getUserByMap(map);
System.out.println(user);
}
public User getUserByMap(Map<String, Object> map);//查询姓名和密码匹配的user
<!--查询姓名和密码匹配的user-->
<select id="getUserByMap" resultType="User">
SELECT * FROM jdbc where username = #{username} and password = #{password}
</select>
//查询姓名和密码匹配的user
@Override
public User getUserByMap(Map<String, Object> map) {
User user = null;
SqlSession sqlSession = null;
try {
sqlSession = MyBatisUtil.getSqlSession();
user = sqlSession.getMapper(IUserDao.class).getUserByMap(map);
}finally{
MyBatisUtil.closeSqlSession(sqlSession);
}
return user;
}
//id2之后的所有的user对象,数组模式,输出姓名
@Test
public void testGetUserList() throws Exception {
List<User> userList = userDao.getUserList();
for (User user : userList) {
System.out.println(user.getUsername());
}
}
public List<User> getUserList();//id2之后的所有的user对象,数组模式
<!--id2之后的所有的user对象,数组模式-->
<select id="getUserList" resultType="com.yy.po.User">
SELECT * FROM jdbc where userid > 2
</select>
//id2之后的所有的user对象,数组模式
@Override
public List<User> getUserList() {
List<User> userList = null;
SqlSession sqlSession = null;
try {
sqlSession = MyBatisUtil.getSqlSession();
userList = sqlSession.getMapper(IUserDao.class).getUserList();
}finally{
MyBatisUtil.closeSqlSession(sqlSession);
}
return userList;
}
//带参数数据库添加一个对象名字密码123
@Test
public void testSaveUserByUser() throws Exception {
User user = new User();
user.setUsername("123");
user.setPassword("123");
int row = userDao.saveUserByUser(user);
System.out.println(row);
}
public int saveUserByUser(User user);//带参数数据库添加一个对象名字密码123
</insert>
<!--带参数数据库添加一个对象名字密码123-->
<insert id="saveUserByUser" parameterType="com.yy.po.User">
insert into jdbc(username,password) values(#{username},#{password})
</insert>
//带参数数据库添加一个对象名字密码123
@Override
public int saveUserByUser(User user) {
int row = 0;
SqlSession sqlSession = null;
try {
sqlSession = MyBatisUtil.getSqlSession();
row = sqlSession.getMapper(IUserDao.class).saveUserByUser(user);
}finally{
MyBatisUtil.closeSqlSession(sqlSession);
}
return row;
}
动态sql:
//动态SQL 修改7号用户名称密码 带参数
@Test
public void testUpdateUserBySet() throws Exception {
User user = new User();
user.setUsername("123");
user.setPassword("123");
user.setUserid(7);
userDao.updateUserBySet(user);
}
//动态SQL 修改7号用户名称 带参数
@Test
public void testUpdateUserByTrim() throws Exception {
User user = new User();
user.setUsername("13245");
// user.setPassword("1234567");
user.setUserid(7);
userDao.updateUserByTrim(user);
}
//查询1,2号的信息 动态SQL
@Test
public void testGetUserListByUseridForeachArray() throws Exception {
int[] userids = {1,2};
List<User> userList = userDao.getUserListByUseridForeachArray(userids);
for (User user : userList) {
System.out.println(user.getUsername());
}
}
//查询1号的信息 动态SQL
@Test
public void testGetUserListByUseridForeachList() throws Exception {
List<Integer> usernameList = new ArrayList<Integer>();
usernameList.add(1);
// usernameList.add(2);
List<User> userList = userDao.getUserListByUseridForeachList(usernameList);
for (User user : userList) {
System.out.println(user.getUsername());
}
}
//传两个参数的map查询
@Test
public void testGetUserListByMap() throws Exception {
Map<String, Object> map = new HashMap<String, Object>();
map.put("sex", 0);
List<String> usernameList = new ArrayList<String>();
usernameList.add("123");
usernameList.add("123456");
// usernameList.add("mingzhu");
map.put("usernameList", usernameList);
List<User> userList = userDao.getUserListByMap(map);
for (User user : userList) {
System.out.println(user.getUsername());
}
}
//多个数据查询
@Test
public void testGetUserListByChoose() throws Exception {
List<User> userList = userDao.getUserListByChoose("111", 0, null, 0);
for (User user : userList) {
System.out.println(user.getUsername());
}
}
//动态SQL
public User getUserByMap2(Map<String, Object> map);查询表内姓名和密码为aaa的不能查询多个以map的方式
public int updateUserBySet(User user);动态SQL 修改7号用户名称密码 带参数
public int updateUserByTrim(User user);//动态SQL 修改7号用户名称 带参数
public List<User> getUserListByUseridForeachArray(int[] userids);//查询1,2号的信息 动态SQL
public List<User> getUserListByUseridForeachList(List<Integer> useridList);//查询1号的信息 动态SQL
public List<User> getUserListByMap(Map<String, Object> map);//传两个参数的map查询
public List<User> getUserListByChoose(@Param("username")String username,@Param("sex")int sex,@Param("password")String password,@Param("flag")int flag);//多个数据查询
<!--查询表内姓名和密码为aaa的不能查询多个以map的方式//动态SQL-->
<select id="getUserByMap2" resultType="com.yy.po.User">
select * from jdbc where 1=1
<if test="username != null and username != ''">
and username = #{username}
</if>
<if test="password != null and password != ''">
and password = #{password}
</if>
</select>
<!--动态SQL 修改7号用户名称密码 带参数动态SQL 修改7号用户名称密码 带参数-->
<update id="updateUserBySet">
update jdbc
<set>
<if test="username != null and username != ''">
username = #{username},
</if>
<if test="password != null and password != ''">
password = #{password}
</if>
</set>
where userid = #{userid}
</update>
<!--//动态SQL 修改7号用户名称 带参数-->
<update id="updateUserByTrim">
update jdbc
<trim prefix="set" suffixOverrides="," suffix="where userId = #{userid}">
<if test="username != null and username != ''">
username = #{username},
</if>
<if test="password != null and password != ''">
password = #{password}
</if>
</trim>
</update>
<!--//查询1,2号的信息 动态SQL-->
<select id="getUserListByUseridForeachArray" resultType="com.yy.po.User">
select * from jdbc where userid in
<foreach collection="array" item="userids" open="(" separator="," close=")">
#{userids}
</foreach>
</select>
<!--//查询1号的信息 动态SQL-->
<select id="getUserListByUseridForeachList" resultType="com.yy.po.User">
select * from jdbc where userid in
<foreach collection="list" item="usernameList" open="(" separator="," close=")">
#{usernameList}
</foreach>
</select>
<!--//传两个参数的map查询-->
<select id="getUserListByMap" resultType="com.yy.po.User">
select * from jdbc where sex = #{sex} and username in
<foreach collection="usernameList" item="map" open="(" separator="," close=")">
#{map}
</foreach>
</select>
<!--//多个数据查询-->
<select id="getUserListByChoose" resultType="com.yy.po.User">
select * from jdbc where 1=1
<choose>
<when test="sex != null and sex >= 0">
and sex = #{sex}
</when>
<when test="username != null and username != ''">
and username = #{username}
</when>
<when test="password != null and password != ''">
and password = #{password}
</when>
<otherwise>
and flag = #{flag}
</otherwise>
</choose>
</select>
//查询表内姓名和密码为aaa的不能查询多个以map的方式//动态SQL
@Override
public User getUserByMap2(Map<String, Object> map) {
User user = null;
SqlSession sqlSession = null;
try {
sqlSession = MyBatisUtil.getSqlSession();
user = sqlSession.getMapper(IUserDao.class).getUserByMap2(map);
}finally{
MyBatisUtil.closeSqlSession(sqlSession);
}
return user;
}
动态SQL 修改7号用户名称密码 带参数
@Override
public int updateUserBySet(User user) {
int row = 0;
SqlSession sqlSession = null;
try {
sqlSession = MyBatisUtil.getSqlSession();
row = sqlSession.getMapper(IUserDao.class).updateUserBySet(user);
}finally{
MyBatisUtil.closeSqlSession(sqlSession);
}
return row;
}
//动态SQL 修改7号用户名称 带参数
@Override
public int updateUserByTrim(User user) {
int row = 0;
SqlSession sqlSession = null;
try {
sqlSession = MyBatisUtil.getSqlSession();
row = sqlSession.getMapper(IUserDao.class).updateUserByTrim(user);
}finally{
MyBatisUtil.closeSqlSession(sqlSession);
}
return row;
}
//查询1,2号的信息 动态SQL
@Override
public List<User> getUserListByUseridForeachArray(int[] userids) {
List<User> userList = null;
SqlSession sqlSession = null;
try {
sqlSession = MyBatisUtil.getSqlSession();
userList = sqlSession.getMapper(IUserDao.class).getUserListByUseridForeachArray(userids);
}finally{
MyBatisUtil.closeSqlSession(sqlSession);
}
return userList;
}
//查询1号的信息 动态SQL
@Override
public List<User> getUserListByUseridForeachList(List<Integer> useridList) {
List<User> userList = null;
SqlSession sqlSession = null;
try {
sqlSession = MyBatisUtil.getSqlSession();
userList = sqlSession.getMapper(IUserDao.class).getUserListByUseridForeachList(useridList);
}finally{
MyBatisUtil.closeSqlSession(sqlSession);
}
return userList;
}
//传两个参数的map查询
@Override
public List<User> getUserListByMap(Map<String, Object> map) {
List<User> userList = null;
SqlSession sqlSession = null;
try {
sqlSession = MyBatisUtil.getSqlSession();
userList = sqlSession.getMapper(IUserDao.class).getUserListByMap(map);
}finally{
MyBatisUtil.closeSqlSession(sqlSession);
}
return userList;
}
//多个数据查询
@Override
public List<User> getUserListByChoose(String username, int sex,
String password, int flag) {
List<User> userList = null;
SqlSession sqlSession = null;
try {
sqlSession = MyBatisUtil.getSqlSession();
userList = sqlSession.getMapper(IUserDao.class).getUserListByChoose(username, sex, password, flag);
}finally{
MyBatisUtil.closeSqlSession(sqlSession);
}
return userList;
}
直接复制到文档即可运行。