国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

JSP網(wǎng)站開發(fā)基礎(chǔ)總結(jié)《四》

2019-11-14 23:19:38
字體:
供稿:網(wǎng)友
jsp網(wǎng)站開發(fā)基礎(chǔ)總結(jié)《四》

  經(jīng)過前幾篇的摸爬滾打,下面我們就開始我們真正的數(shù)據(jù)庫操作了,本篇重點在于如何在網(wǎng)站端編寫數(shù)據(jù)庫操作語句,內(nèi)容不多,就是我們常見的增刪改查。

 0、數(shù)據(jù)庫對象創(chuàng)建:

  在javaSE基礎(chǔ)知識總結(jié)時,就為大家點明了,JAVA是一種面向?qū)ο缶幊陶Z言,所以我們再進(jìn)行數(shù)據(jù)庫創(chuàng)建之前,要先創(chuàng)建一個對象類。

/* * 實例化數(shù)據(jù)庫中的對象 */public class Student {    PRivate int id;//學(xué)生ID    private String name;//學(xué)生姓名    private int sex;//學(xué)生性別    private int year;//學(xué)生年齡    private String from;//學(xué)生故鄉(xiāng)    private String school;//學(xué)生所在學(xué)校        //為屬性添加set()、get()方法    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 getSex() {        return sex;    }    public void setSex(int sex) {        this.sex = sex;    }    public int getYear() {        return year;    }    public void setYear(int year) {        this.year = year;    }    public String getFrom() {        return from;    }    public void setFrom(String from) {        this.from = from;    }    public String getSchool() {        return school;    }    public void setSchool(String school) {        this.school = school;    }}

 1、接口創(chuàng)建:

  這里采用了面向接口編程,方便我們管理我們的數(shù)據(jù)庫操作方法。

/* * 數(shù)據(jù)庫操作方法接口 */public interface StudentMa {        public boolean add(Student student);//添加    public boolean del(int id);//刪除    public boolean update(Student student);//修改    public Student getById(int id);//精確查詢    public List<Student> getByName(String name);//模糊查詢    public List<Student> getAll();//遍歷    }

 2、增加操作:

  如何通過JAVA語句為數(shù)據(jù)庫添加數(shù)據(jù)呢?下面就是具體的方法實現(xiàn)。

public boolean add(Student student) {        boolean flag = false;        Connection conn = null;        PreparedStatement pst = null;        conn = DBO.getConnection();        String sql = "insert into students (name,sex,year,from,school) values (?,?,?,?,?)";//'?'表示占位符        try {            pst = conn.prepareStatement(sql);            pst.setString(1, student.getName());            pst.setInt(2, student.getSex());            pst.setInt(3, student.getYear());            pst.setString(4, student.getFrom());            pst.setString(5, student.getSchool());            int n = pst.executeUpdate();            if(n>0){                flag = true;            }        } catch (SQLException e) {            e.printStackTrace();        }        return flag;    }

 3、刪除操作:

  如何通過JAVA語句刪除數(shù)據(jù)庫中的數(shù)據(jù)呢?下面就是具體的方法實現(xiàn)。

public boolean del(int id) {        boolean flag = false;        Connection conn = null;        PreparedStatement pst = null;        conn = DBO.getConnection();        String sql = "delete from students where id="+id;        try {            pst = conn.prepareStatement(sql);            int n = pst.executeUpdate();            if(n>0){                flag = true;            }        } catch (SQLException e) {            e.printStackTrace();        }        return flag;    }

 4、修改操作:

  如何通過JAVA語句修改數(shù)據(jù)庫中的數(shù)據(jù)呢?下面就是具體的方法實現(xiàn)。

public boolean update(Student student) {        boolean flag = false;        Connection conn = null;        PreparedStatement pst = null;        conn = DBO.getConnection();        String sql = "update students set name=?,sex=?,year=?,from=?,school=? where id=?";//'?'表示占位符        try {            pst = conn.prepareStatement(sql);            pst.setString(1, student.getName());            pst.setInt(2, student.getSex());            pst.setInt(3, student.getYear());            pst.setString(4, student.getFrom());            pst.setString(5, student.getSchool());            pst.setInt(6, student.getId());            int n = pst.executeUpdate();            if(n>0){                flag = true;            }        } catch (SQLException e) {            e.printStackTrace();        }        return flag;    }

 5、查詢操作:

  a、精確查詢:

    如何通過JAVA語句精確查找數(shù)據(jù)庫中的數(shù)據(jù)呢?下面就是具體的方法實現(xiàn)。

public Student getById(int id) {        Student student = new Student();        Connection conn = null;        Statement st = null;        ResultSet rs = null;        conn = DBO.getConnection();        String sql = "select * from students where id="+id;        try {            st = conn.createStatement();            rs = st.executeQuery(sql);            while(rs.next()){                student.setId(id);                student.setName(rs.getString("name"));                student.setSex(rs.getInt("sex"));                student.setYear(rs.getInt("year"));                student.setFrom(rs.getString("from"));                student.setSchool(rs.getString("school"));            }        } catch (SQLException e) {            e.printStackTrace();        }        return student;    }

  b、模糊查詢:

    如何通過JAVA語句模糊查找數(shù)據(jù)庫中的數(shù)據(jù)呢?下面就是具體的方法實現(xiàn)。

public List<Student> getByName(String name) {        List<Student> list = null;        Connection conn = null;        PreparedStatement pst = null;        ResultSet rs = null;        conn = DBO.getConnection();        String sql = "select * from students where name like ?";                try {            pst = conn.prepareStatement(sql);            pst.setString(1, "%"+name+"%");            rs = pst.executeQuery();            while(rs.next()){                Student student = new Student();                student.setId(rs.getInt("id"));                student.setName(rs.getString("name"));                student.setSex(rs.getInt("sex"));                student.setYear(rs.getInt("year"));                student.setFrom(rs.getString("from"));                student.setSchool(rs.getString("school"));                list.add(student);            }        } catch (SQLException e) {            e.printStackTrace();        }        return list;    }

 6、遍歷操作:

  如何通過JAVA語句遍歷數(shù)據(jù)庫中的數(shù)據(jù)呢?下面就是具體的方法實現(xiàn)。

public List<Student> getAll() {        List<Student> list = new ArrayList<Student>();        Connection conn = null;        Statement st = null;        ResultSet rs = null;        conn = DBO.getConnection();        String sql = "select * from students";                try {            st = conn.createStatement();            rs = st.executeQuery(sql);            while(rs.next()){                Student student = new Student();                student.setId(rs.getInt("id"));                student.setName(rs.getString("name"));                student.setSex(rs.getInt("sex"));                student.setYear(rs.getInt("year"));                student.setFrom(rs.getString("from"));                student.setSchool(rs.getString("school"));                list.add(student);            }        } catch (SQLException e) {            e.printStackTrace();        }        return list;    }

  好了到這里,關(guān)于數(shù)據(jù)庫的增刪改查操作的JAVA實現(xiàn)已經(jīng)為大家總結(jié)完畢。下一篇select實現(xiàn)jsp頁面與數(shù)據(jù)庫交互。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 潜山县| 舟曲县| 西吉县| 喀喇沁旗| 滁州市| 新源县| 广饶县| 四川省| 江安县| 高台县| 陆丰市| 平南县| 北海市| 桦甸市| 娱乐| 尉犁县| 孝感市| 灵武市| 水富县| 盐池县| 永平县| 琼中| 麦盖提县| 定远县| 阳高县| 津南区| 叶城县| 改则县| 淮阳县| 正阳县| 灵武市| 宿州市| 鹤峰县| 盐津县| 彰化县| 新民市| 桐城市| 宁夏| 肃宁县| 左云县| 蓬安县|