首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java - Mysql Getter/Setter

Java - Mysql Getter/Setter
EN

Stack Overflow用户
提问于 2013-11-23 01:02:49
回答 1查看 2.3K关注 0票数 0

我是java的新手,我使用getter和setter作为用户。-如何在getter和setter中添加查询?-如何使用ResultSet、getter和setter语句?

对不起我的英语,很糟糕。谢谢你的答复

我的类连接

代码语言:javascript
复制
    public class con {
    String driver = "com.mysql.jdbc.Driver";
    String url ="jdbc:mysql://localhost:3306/tienda";
    String user = "root";
    String pw = "";
    Connection conn = null;
public ResultSet iList(String iSql){
       try{
           Class.forName(driver).newInstance();
           Connection oCnn  = DriverManager.getConnection(url,user,pw);
           PreparedStatement oPst = oCnn.prepareStatement(iSql);
           ResultSet oRst = oPst.executeQuery();
           return oRst;
       }catch(Exception e){
           return null;
       }
   }
   public String Exen(String iSql){
       try{
           Class.forName(driver).newInstance();
           Connection oCnn = DriverManager.getConnection(url, user, pw);
           PreparedStatement oPst = oCnn.prepareStatement(iSql);
           int i= oPst.executeUpdate();
           return null;
       }catch(Exception e){
           return "error "+e.getMessage();
       }
   }
}

我的用户Getter和setter

代码语言:javascript
复制
public class usuario {
   conexion cn = new con();
    private String id;
    private String name;
    private String lastn;
    private String dir;
    private String iPass;

    public String Eliminau(){
        String cad ="delete from tblusuario where idusuario='" + this.getId() + "'";
        return cn.Ejecutar(cad);
    }
    public String Login(){
        String cad = "SELECT * FROM tblusuario WHERE name  '" + this.getname() + "' AND pass = '"+
                this.getiPass() + "'";
        return cn.Ejecutar(cad);
    }

    public String agregar(){
        String cad = "INSERT INTO tblusuario VALUES('" + 
                this.getId() + "','" + this.getiPass() + "','" + this.getname() + "','" +
                this.getlastn() + "','" + this.getDir() +"')";
        return cn.Ejecutar(cad);
    }

    public String getId() { return id;}

    public void setId(String id) {this.id = id;}

    public String getname() { return name;}

    public void setname(String name) {this.name = name;}

    public String getlastn() {return lastn;}

    public void setlastn(String lastn) {this.lastn = lastn;}

    public String getDir() {return dir;}

    public void setDir(String dir) {this.dir = dir; }

    public String getiPass() { return iPass;}

    public void setiPass(String iPass) {
        String cript;
        cript = DigestUtils.md5Hex(iPass);
        this.iPass = cript;
    }    
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-23 01:09:57

首先,您的整个代码编写得有点糟糕。根本不返回ResultSetStatement。最好的方法是使用DAO设计模式,这至少可以确保代码干净。

此外,在该示例中,还演示了如何使用PreparedStatement防止SQL漏洞。你的代码很脆弱。这里还有关于JDBC的公公教程。

这也是我关于JDBC的GitHub项目。只是为了你这样的案子。下载并测试它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20157204

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档