自动生成java中的id和总ID数

时间:2015-08-05 19:12:53

标签: java sql user-interface auto-increment

实际上,我在这个问题上有压力。 我有一张图片

enter image description here

所以我在这里遇到了两个问题。

  1. 如何插入自动生成ID,格式为" T00001"?
  2. 当我在表格中显示数据时,如何计算ID的总数。
  3. 我是Java MVC GUI的新手。任何人都可以帮我找到一个好的解决方案 先谢谢

    这是我的数据访问对象文件。

      

    包装模型;       import java.sql。*;       import java.util.ArrayList;       import javax.swing.JOptionPane;

    public class SchoolDAO{
        Conexion conexion;
    
        public SchoolDAO(){
    
        conexion = new Conexion();
    }
    
    
            /////INSERT TEACHER
            public String insertTeacher(String tbno, String tbname, String tbphone, String tbqualification, String tbexp){
        String rptaAdd = null; 
    try {
        Connection accessDB  = conexion.getConexion(); 
        CallableStatement cs  = accessDB.prepareCall ("{call teacher_insert(?,?,?,?,?)}");
                      cs.setString(1, tbno);
                      cs.setString(2, tbname);
                      cs.setString(3, tbphone);
                      cs.setString(4, tbqualification);
                      cs.setString(5, tbexp);
    
        int numFAeffect = cs.executeUpdate();
    
                if(numFAeffect>0){
                    rptaAdd ="Add successful.";
                }
        } catch (Exception e){
                JOptionPane.showMessageDialog(null, e.toString());
    }
        return rptaAdd;
    }
    
            public ArrayList<School> listTeacher(){
        ArrayList listaTeacher = new ArrayList();
        School school; 
        try{
        Connection accessDB = conexion.getConexion();
        PreparedStatement ps = accessDB.prepareStatement("select * from teacher");
        ResultSet rs = ps.executeQuery();
        while(rs.next()){
             school = new School();
                 school.setTno(rs.getString(1));
                 school.setTname(rs.getString(2));
                 school.setTphone(rs.getString(3));
                 school.setTqualification(rs.getString(4));
                 school.setTexp(rs.getString(5));
                 listaTeacher.add(school);
    
                }
            }catch (Exception e){
            }
            return listaTeacher;
    
        }
    
    
        }
    

1 个答案:

答案 0 :(得分:0)

  1. 将ID作为从序列或其他机制递增的数字发送,这将使您自动递增数字&#34; T&#34; +左边填充的字符串,用零填充到所需的值。

    "T" + StringUtils.leftpad(id + "", 5, "0"); // your ID

  2. 从教师表中选择计数(*)。