java實現串連mysql資料庫單元測試查詢資料的執行個體代碼_java

來源:互聯網
上載者:User

1、按照javaweb項目的要求逐步建立搭建起機構,具體的類包有:model 、db、dao、test;

具體的架構詳見下圖:

2、根據搭建的項目架構建立資料庫test和資料庫表t_userinfo並且添加對應的測試資料; (這裡我使用的是綠色版的資料庫,具體的下載地址:http://pan.baidu.com/s/1mg88YAc)

具體的建立資料庫操作詳見下圖:

3、編寫包中的各種類代碼,具體參考代碼如下:

UserInfo.java

/** * FileName:   UserInfo.java * @Description: TODO封裝對象的資訊 * Copyright: personage  * Company personage   * @author:  gaoxing * @version  V1.0 * Createdate:     2014-5-25 下午2:26:41 * * Modification History: * Date     Author    Version    Discription * ----------------------------------------------------------------------------------- * 2014-5-25    GX     1.0       1.0 * Why & What is modified: <修改原因描述> */package com.org.user.model; /** * @ClassName:   UserInfo * @Description:TODO封裝對象的資訊 * @author:  gaoxing * @date:    2014-5-25 下午2:26:41 */public class UserInfo {   private int userid;    private String username;    private String password;    /**   * @Title:    UserInfo   * @Description:  TODO(描述這個方法的作用)   * @param:  @param userid   * @param:  @param username   * @param:  @param password   * @throws   */  public UserInfo(int userid, String username, String password) {    super();    this.userid = userid;    this.username = username;    this.password = password;  }   /** * @Title:    UserInfo * @Description:  TODO無參的構造方法 * @param:   * @throws */public UserInfo() {  super();} public int getUserid() {    return userid;  }  public void setUserid(int userid) {    this.userid = userid;  }  public String getUsername() {    return username;  }  public void setUsername(String username) {    this.username = username;  }  public String getPassword() {    return password;  }  public void setPassword(String password) {    this.password = password;  } }

UserInfoDBManger.java

/** * FileName:   UserInfoDBManger.java * @Description: TODO 串連資料庫的操作 * Copyright: personage  * Company personage   * @author:  gaoxing * @version  V1.0 * Createdate:     2014-5-25 下午2:47:38 * * Modification History: * Date     Author    Version    Discription * ----------------------------------------------------------------------------------- * 2014-5-25    GX     1.0       1.0 * Why & What is modified: <修改原因描述> */package com.org.user.db; import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException; import com.mysql.jdbc.Connection;import com.mysql.jdbc.PreparedStatement; /** * @ClassName: UserInfoDBManger * @Description:TODO串連資料庫的操作 * @author: gaoxing * @date: 2014-5-25 下午2:47:38 */public class UserInfoDBManger {  private static Connection conn = null;  private PreparedStatement ps = null;  private ResultSet rs = null;   public static Connection getConn() {    String url = "jdbc:mysql://localhost:3306/test";    try {      Class.forName("com.mysql.jdbc.Driver");      try {        conn = (Connection) DriverManager.getConnection(url, "root",            "mysql");      } catch (SQLException e) {        System.out.println(e.getMessage());      }    } catch (ClassNotFoundException e) {      System.out.println(e.getMessage());    }    return conn;  }   public void close() {    try {      rs.close();      ps.close();      conn.close();    } catch (SQLException e) {      e.getMessage();    }  }   }

UserInfoDao.java

/** * FileName:   UserInfoDao.java * @Description: TODO 處理通過資料庫的串連進行操作對象資訊 * Copyright: personage  * Company personage   * @author:  gaoxing * @version  V1.0 * Createdate:     2014-5-25 下午2:36:09 * * Modification History: * Date     Author    Version    Discription * ----------------------------------------------------------------------------------- * 2014-5-25    GX     1.0       1.0 * Why & What is modified: <修改原因描述> */package com.org.user.dao; import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List; import com.mysql.jdbc.Connection;import com.mysql.jdbc.PreparedStatement;import com.org.user.db.UserInfoDBManger;import com.org.user.model.UserInfo; /** * @ClassName:   UserInfoDao * @Description:TODO處理通過資料庫的串連進行操作對象資訊 * @author:  gaoxing * @date:    2014-5-25 下午2:36:09 */public class UserInfoDao {  Connection conn=null;  PreparedStatement ps=null;  ResultSet rs=null;  public  List<UserInfo> find(){    List<UserInfo> list=new ArrayList<UserInfo>();    String sql="select * from t_userinfo ";    conn=UserInfoDBManger.getConn();    try {      ps=(PreparedStatement) conn.prepareStatement(sql);      rs=ps.executeQuery();      while (rs.next()) {        UserInfo ui=new UserInfo();         ui.setUserid(rs.getInt(1));         ui.setUsername(rs.getString(2));         ui.setPassword(rs.getString(3));        list.add(ui);               }    } catch (SQLException e) {      // TODO Auto-generated catch block      e.printStackTrace();    }    return list;  }}

UserInfoTest.java

/** * FileName:   UserInfoTest.java * @Description: TODO測試dao包的方法 * Copyright: personage  * Company personage   * @author:  gaoxing * @version  V1.0 * Createdate:     2014-5-25 下午5:43:03 * * Modification History: * Date     Author    Version    Discription * ----------------------------------------------------------------------------------- * 2014-5-25    GX     1.0       1.0 * Why & What is modified: <修改原因描述> */package com.org.user.test; import static org.junit.Assert.*; import java.util.List; import org.junit.AfterClass;import org.junit.BeforeClass;import org.junit.Test; import com.org.user.dao.UserInfoDao;import com.org.user.model.UserInfo; /** * @ClassName:   UserInfoTest * @Description:TODO 測試dao包的方法 * @author:  gaoxing * @date:    2014-5-25 下午5:43:03 */public class UserInfoTest {   /**   * @Title: setUpBeforeClass   * @Description: TODO(描述這個方法的作用)   * @param: @throws java.lang.Exception    * @return: void    * @throws   */  @BeforeClass  public static void setUpBeforeClass() throws Exception {  }   /**   * @Title: tearDownAfterClass   * @Description: TODO(描述這個方法的作用)   * @param: @throws java.lang.Exception    * @return: void    * @throws   */  @AfterClass  public static void tearDownAfterClass() throws Exception {  }   /**   * Test method for {@link com.org.user.dao.UserInfoDao#find()}.   */  @Test  public void testFind() {     UserInfoDao udao=new UserInfoDao();     List<UserInfo> list=udao.find();     for (int i = 0; i < list.size(); i++) {       UserInfo ui=list.get(i);       System.out.println("名稱: "+ui.getUsername()+"密碼: "+ui.getPassword());     }  } }

4、在編寫好類內容之後,在搭建項目過程中要加入輔助的JUnit的測試包junit.jar,同時也要匯入資料庫的串連mysq-connector-java-5.1.7-bin.jar  sqljdbc.jar,這樣才可以串連到資料庫;

5、所有的工作做好之後,就可以啟動服務進行運行了查看結果了,如果在JUnit測試台和控制台出現如下結果就表示項目運行成功了。

以上就是小編為大家帶來的java實現串連mysql資料庫單元測試查詢資料的執行個體代碼全部內容了,希望大家多多支援雲棲社區~

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.