• java中gson的简单使用


      把从数据库中查询的记录以JSON格式返回给客户端,在这里使用gson-2.2.4.jar包。

    代码结构如下:

    数据库结构如下:

    (1)User.java

    public class User {
        private int id;
        private String name;
        private int age;
        public int getId() {
            return id;
        }
        public void setId(int id) {
            this.id = id;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public int getAge() {
            return age;
        }
        public void setAge(int age) {
            this.age = age;
        }
    }

    (2)JdbcUtils.java

    public class JdbcUtils {
        private static final String CLASS_NAME="com.mysql.jdbc.Driver";
        private static final String URL="jdbc:mysql://localhost:3306/test";
        private static final String USER="root";
        private static final String PWD="mysql";
        
        private JdbcUtils(){}
        
        static{
            try{
                Class.forName(CLASS_NAME);
            }catch(Exception e){
                e.printStackTrace();
            }
        }
        
        //建立数据库链接
        public static Connection getConn()throws Exception{
            return DriverManager.getConnection(URL,USER,PWD);
        }
        
        //释放资源
        public static void free(ResultSet rs,Statement st,Connection conn){
                try {
                    if(rs!=null){
                        rs.close();
                    }
                } catch (SQLException e) {
                    e.printStackTrace();
                }finally{
                    try {
                        if(st!=null){
                            st.close();
                        }
                    } catch (SQLException e) {
                        e.printStackTrace();
                    }finally{
                        try {
                            if(conn!=null){
                                conn.close();
                            }
                        } catch (SQLException e) {
                            e.printStackTrace();
                        }
                    }
                }
        }
    }

    (3)UserServer.java

    public class UserServer {
        public static List<User> getUserList(){
            List<User> list=null;
            Connection conn=null;
            PreparedStatement ps=null;
            ResultSet rs=null;
            User user=null;
            String sql="select id,name,age from user";
            try {
                conn=JdbcUtils.getConn();
                ps=conn.prepareStatement(sql);
                rs=ps.executeQuery();
                list=new ArrayList<User>();
                while(rs.next()){
                    user=new User();
                    user.setId(rs.getInt("id"));
                    user.setName(rs.getString("name"));
                    user.setAge(rs.getInt("age"));
                    list.add(user);
                }
            } catch (Exception e) {
                e.printStackTrace();
            }finally{
                JdbcUtils.free(rs, ps, conn);
            }
            return list;
        }
    }

    (4)Test.java

    public class Test {
        public static void main(String args[]){
            List<User>userList=UserServer.getUserList();
            if(userList!=null){
                Gson gson=new Gson();
                String jsonstr=gson.toJson(userList);
                System.out.println(jsonstr);
            }
        }
    }

    运行结果:

    [
      {"id":1,"name":"zhangsan","age":23},
      {"id":2,"name":"lisi","age":25},
      {"id":3,"name":"王五","age":25}
    ]
  • 相关阅读:
    权限管理UI
    NET Core 2.0 介绍和使用
    Spring MVC Integration,Spring Security
    微服务系统中的认证策略
    使用git建立远程仓库,让别人git clone下来
    回顾2016,展望2017
    spring security之httpSecurity 专题
    Android VelocityTracker简介
    Android-onInterceptTouchEvent()和onTouchEvent()总结
    两分钟彻底让你明白Android中onInterceptTouchEvent与onTouchEvent(图文)!
  • 原文地址:https://www.cnblogs.com/yshyee/p/3375621.html
Copyright © 2020-2023  润新知