皮皮网

【家校通Android源码】【sakai 源码中文】【账务 系统 源码】java resultset源码

来源:股票软件公式源码 时间:2024-12-22 23:21:53

1.java resultsetԴ??
2.Java干货 | javaresultset.getstring()方法:获取string类型的数据
3.MyBatis源码解析之基础模块—TypeHandler

java resultset源码

java resultsetԴ??

       实体类

package dao;

       public class Person {

        private Integer personid;

        private String personname;

        private String degree;

        private String birth;

        private Integer sal;

        public Person() {

        }

        public Person(Integer personid, String personname, String degree, String birth, Integer sal) {

        super();

        this.personid = personid;

        this.personname = personname;

        this.degree = degree;

        this.birth = birth;

        this.sal = sal;

        }

        public Integer getPersonid() {

        return personid;

        }

        public void setPersonid(Integer personid) {

        this.personid = personid;

        }

        public String getPersonname() {

        return personname;

        }

        public void setPersonname(String personname) {

        this.personname = personname;

        }

        public String getDegree() {

        return degree;

        }

        public void setDegree(String degree) {

        this.degree = degree;

        }

        public String getBirth() {

        return birth;

        }

        public void setBirth(String birth) {

        this.birth = birth;

        }

        public Integer getSal() {

        return sal;

        }

        public void setSal(Integer sal) {

        this.sal = sal;

        }

        @Override

        public String toString() {

        return "Person [personid=" + personid + ", personname=" + personname + ", degree=" + degree + ", birth=" + birth

        + ", sal=" + sal + "]";

        }

       }

       2. dao 

package dao;

       import java.sql.Connection;

       import java.sql.DriverManager;

       import java.sql.PreparedStatement;

       import java.sql.ResultSet;

       import java.sql.SQLException;

       import java.util.ArrayList;

       import java.util.List;

       public class PersonDao {

        static Connection conn = null;

        static {

        // 修改成自己的数据库

        String url = "jdbc:mysql://.0.0.1:/test?serverTimezone=UTC&useSSL=false";

        String user = "root";

        String password = "root";

        try {

                // 记得导入 驱动包

        // 驱动名称:com.mysql.jdbc.Driver (指的是驱动版本:5.7版本的)

        // com.mysql.cj.jdbc.Driver (8.0版本)

        Class.forName("com.mysql.jdbc.Driver");

        conn = DriverManager.getConnection(url, user, password);

        } catch (SQLException e) {

        // TODO Auto-generated catch block

        conn = null;

        e.printStackTrace();

        } catch (ClassNotFoundException e) {

        // TODO Auto-generated catch block

        conn = null;

        e.printStackTrace();

        }

        }

        /

**

          * 查找所有的数据

         * @return List集合

         * @throws SQLException 

         */

        public List<Person> findAll() throws SQLException{

        List<Person> list = null;

        if(conn != null) {

        list = new ArrayList<>();

        String sql = "select * from person";

        PreparedStatement ps = conn.prepareStatement(sql);

        ResultSet rs = ps.executeQuery();

        while(rs.next()) {

        Person temp = new Person();

        temp.setPersonid(rs.getInt("personid"));

        temp.setPersonname(rs.getString("personname"));

        temp.setDegree(rs.getString("degree"));

        temp.setBirth(rs.getString("birth"));

        temp.setSal(rs.getInt("sal"));

        list.add(temp);

        }

        }

        return list;

        }

        public Person findById(int personId) throws SQLException {

        Person temp = null;

        if(conn != null){

        String sql = "select * from person where personid =?";

        PreparedStatement ps = conn.prepareStatement(sql);

        ps.setInt(1, personId);

        ResultSet rs = ps.executeQuery();

        while(rs.next()) {

        temp = new Person();

        temp.setPersonid(rs.getInt("personid"));

        temp.setPersonname(rs.getString("personname"));

        temp.setDegree(rs.getString("degree"));

        temp.setBirth(rs.getString("birth"));

        temp.setSal(rs.getInt("sal"));

        }

        }

        return temp;

        }

        /

**

           * 通过id来删除一条记录

         * @param personId

         * @throws SQLException

         */

        public void deleteById(int personId) throws SQLException {

        if(conn != null) {

        String sql = "delete from person where personid = ?";

        PreparedStatement ps = conn.prepareStatement(sql);

        ps.setInt(1, personId);

        ps.execute();

        }else {

        System.out.println("无法建立连接");

        }

        }

        // 其他的可以自己试试来写!模板都是一样的,除了sql语句不同

       }

Java干货 | javaresultset.getstring()方法:获取string类型的数据

       Java中的ResultSet接口提供了一系列用于检索数据库中存储的数据的方法。其中,getString()方法用于获取ResultSet对象中当前行指定列的值,并将其作为String类型返回。家校通Android源码

       1. 案例

       本代码案例演示了如何使用getString()方法从ResultSet对象中获取String类型的数据。首先,使用DriverManager类获取连接对象,创建Statement对象,执行SQL查询,并从ResultSet对象中检索数据。

       在上述代码中,通过DriverManager类获取连接对象,使用createStatement()方法创建Statement对象,然后执行查询语句,遍历ResultSet对象,使用getInt()和getString()方法获取每行的值。

       使用getString()方法获取name列的值,将其作为String类型返回。若列数据类型非String,sakai 源码中文该方法会自动转换为String。使用该方法时,确保ResultSet对象已移动至正确行,否则返回null。

       2. 项目案例

       结合项目案例,演示如何使用getString()方法从MySQL数据库中检索数据。假设有一个名为employees的表,包含id、name、email和phone列。账务 系统 源码我们想检索所有员工的姓名和电话,并在Web页面上显示。

       创建EmployeeDao类与数据库交互。定义SELECT_EMPLOYEES常量,包含查询语句,从employees表中检索name和phone列的值。

       定义getEmployees()方法,使用DriverManager类获取连接对象,创建Statement对象,执行查询语句,uip源码分析遍历ResultSet对象,使用getString()方法获取每行的name和phone列的值,创建Employee对象,并将其添加到List对象中。

       在Web应用程序中,使用EmployeeDao类的getEmployees()方法获取员工列表,并在页面上显示。

       3. 注意事项

       使用getString()方法时需要注意以下事项:返回String类型数据,非String类型自动转换为String;若指定列不存在,抛出SQLException异常;若试图读取已关闭的网上祭拜 源码ResultSet对象数据,抛出SQLException异常;确保ResultSet对象已移动至正确行,否则返回null。

       注意以上事项,确保正确获取ResultSet对象数据。

       总之,getString()方法是Java中获取ResultSet对象String类型数据的常用方法。通过代码示例和项目案例,了解该方法的使用和注意事项。

       4. 结论

       本文解释了Java中的getString()方法的使用,包括代码示例和项目案例。通过学习本文,您可以了解如何使用该方法从ResultSet对象中获取String类型的数据,并了解使用该方法时需要注意的事项。希望本文对大家有所帮助!

MyBatis源码解析之基础模块—TypeHandler

       MyBatis源码解析之基础模块—TypeHandler

       在MyBatis的上一章节中,我们探讨了Plugin模块的拦截器配置和自定义。接下来,我们将深入理解数据库与Java对象之间转换的核心机制,即Type模块的源码。

       Type模块位于org.apache.ibatis.type,其架构设计包含IntegerTypeHandler和UnknownTypeHandler等实现类,用于处理不同类型的转换。JdbcType枚举定义了常见的数据库数据类型,MappedTypes和MappedJdbcTypes注解用于标注Java类型和数据库类型的映射。

       对于类型转换,TypeHandler是核心接口,它定义了处理方法。BaseTypeHandler是抽象基类,采用模板方法模式,提供了通用逻辑,而具体实现由子类如IntegerTypeHandler完成。对于没有明确泛型类型的转换,UnknownTypeHandler则负责处理。

       TypeAliasRegister负责注册Java常用数据类型的别名,而TypeHandlerRegister是类型转换器的注册中心,MyBatis在初始化时已经自动注册了常用TypeHandler。ResultSetWrapper则负责包装ResultSet,提供类型转换器的获取,最终由ResultSetHandler处理实际的数据处理。

       总结来说,Type模块在MyBatis中负责数据的类型转换,通过TypeHandler和相关的注册机制,确保了数据库操作与Java对象之间的无缝对接。在实际开发中,无需过多配置,MyBatis就能自动完成类型转换,使得开发更为便捷。