开篇博客 - 优化NAYNEHC大神写的一段Java代码。

源码博客地址:https://www.cnblogs.com/hellokitty1/p/5216025.html

优化点:

1)在select操作的方法里面,出现异常的时候,个人觉得是不需要执行session.rollback()操作的。

2)在所有数据库连接使用完成以后,个人觉得需要执行下session.close()方法,将使用完成的连接重新返还到连接池,以避免数据库连接的泄露。

以下为优化后的代码:

 XML Code 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
 
package com.cy.mybatis.tools;

import java.util.List;

import org.apache.ibatis.session.SqlSession;

import com.cy.mybatis.beans.UserBean;
import com.cy.mybatis.mapper.UserMapper;
import com.cy.mybatis.service.DBTools;

public class UserService {
    
    public static void main(String[] args) {
//       insertUser();
//       deleteUser();
//       selectUserById();
        selectAllUser();
    }
    
    
/ **
     * 新增用户
     *
/
    private static void insertUser() {
        SqlSession session = DBTools.getSession();
        UserMapper mapper = session.getMapper(UserMapper.class);
        UserBean user = new UserBean(
"lisi" "5432109876" , 1100.0);
        try {
            mapper.insertUser(user);
            session.commit();
            session.close();
        } catch (Exception e) {
            e.printStackTrace();
            session.rollback();
        }
    }
    
    
/ **
     * 删除用户
     *
/
    private static void deleteUser(){
        SqlSession session=DBTools.getSession();
        UserMapper mapper=session.getMapper(UserMapper.class);
        try {
            mapper.deleteUser(1);
            
//  增删改需要commit()会话;
            session.commit();
            session.close();
        } catch (Exception e) {
            e.printStackTrace();
            session.rollback();
        }
    }
    
    
/ **
     * 根据id查询用户
     *
/
    private static void selectUserById(){
        SqlSession session=DBTools.getSession();
        UserMapper mapper=session.getMapper(UserMapper.class);
        try {
            UserBean user = mapper.selectUserById(2);
            session.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    
    
/ **
     * 查询所有的用户
     *
/
    private static void selectAllUser(){
        SqlSession session=DBTools.getSession();
        UserMapper mapper=session.getMapper(UserMapper.class);
        try {
            List
<UserBean>  user=mapper.selectAllUser();
            System.out.println(
"ResultSet has "  + user.size() + " rows." );
            for(int i=0; i
< user.size();i++){
                System.out.println(
"ID=" +user.get(i).getId()+ " | "  
                        + 
"username=" +user.get(i).getUsername()+ " | "
                        + 
"password=" +user.get(i).getPassword()+ " | "
                        + 
"account=" +user.get(i).getAccount());
            }
            session.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

猜你喜欢

转载自www.cnblogs.com/cnskylee/p/10384183.html
今日推荐