程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> JavaWeb學習過程 之MVC模式下的查詢,javawebmvc

JavaWeb學習過程 之MVC模式下的查詢,javawebmvc

編輯:JAVA綜合教程

JavaWeb學習過程 之MVC模式下的查詢,javawebmvc


   近些天一直在學習javaweb 但總是時斷時續,今天終於有時間,來學習一下MVC下的查詢模式。

一、首先先了解一下 什麼是mvc?

  MVC是Model-View-Controller的簡稱,即模型-視圖-控制器。它是一種設計模式,它吧應用程序分成三個核心模塊,模型,視圖,控制器。他們各自處理自己的任務。

  模型:是應用程序的主體部分,模型指的是業務模型。 一個模型可以為多個視圖提供數據。

  視圖:是用戶看到的並與之交互的界面。 可以向用戶顯示相關的數據,接受用戶的輸入,但是它不進行任何實際的業務處理。

  控制器:接受用戶的輸入並調用模型和視圖,完成用戶的需求。

  流程: 客戶端發送請求到 服務器, 服務器 將請求發送給servlet ,servlet接收請求,根據請求的業務邏輯調用model層,然後在想servlet返回一個結果,根據結果 轉向(轉發,重定向)一個頁面。

二、具體查詢

  問題:點擊頁面的一個超鏈接,顯示數據庫裡學生的信息

    

    1.根目錄結構

    

    2.

    創建一個學生類Student。

    內容屬性: 獲取get,set方法。

    private String studentId;
    private String name;
    private    String idCard;
    private String sex;
    private int age;
    private int grade;    

    2.創建一個StudentDao類 用於獲取數據庫信息 返回學生鏈表

    內容:其中有我自己找的一個工具類

public class StudentDao {
    public List<Student> getAll(){
        List<Student> students=new ArrayList<Student>();
        
        ResultSet rs=null;
        try {
            
            String sql ="select studentId,name,idCard,sex,age,grade from student";
            rs=DBConnection.executeQuery(sql);
            while(rs.next()){
                String studentId=rs.getString(1);
                String name=rs.getString(2);
                String idCard=rs.getString(3);
                String sex=rs.getString(4);
                int age=rs.getInt(5);
                int grade=rs.getInt(6);
                
                Student student=new Student(studentId, name, idCard, sex, age, grade);
                students.add(student);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }finally{
            if(rs!=null){
                try {
                    rs.close();
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
            
        }
            return students;
    
    }
}

    3.創建一個servlet 類名為ListAllStudentServlet 配置屬性。 只改寫doGet() 方法。 因為另一個頁面需要獲取學生鏈表 可以 用轉發的方式進行編寫。

    內容:

1 public void doGet(HttpServletRequest request, HttpServletResponse response)
2             throws ServletException, IOException {
3 
4         StudentDao studentDao=new StudentDao();
5         List<Student> students=studentDao.getAll();
6         request.setAttribute("students", students);    
7         request.getRequestDispatcher("/student.jsp").forward(request, response); // 轉發
8     }

    4.創建一個test.jsp 用於發送請求。

    內容:<a href="listAllStudent">List all students</a>

    5.創建顯示頁面,student.jsp 

    內容: 

 1 <body>
 2     <%
 3         List<Student> students=(List<Student>)request.getAttribute("students");
 4      %>
 5      <h3>學生信息表</h3>
 6      
 7      <table>
 8              <tr>
 9                  <th>studentId</th>
10                  <th>name</th>
11                  <th>idCard</th>
12                  <th>sex</th>
13                  <th>age</th>
14                  <th>grade</th>
15              </tr>
16              
17              <%
18                  for(Student student:students){
19                      
20               %>
21              <tr>
22                  <td><%=student.getStudentId() %></td>
23                  <td><%=student.getName() %></td>
24                  <td><%=student.getIdCard() %></td>
25                  <td><%=student.getSex() %></td>
26                  <td><%=student.getAge() %></td>
27                  <td><%=student.getGrade() %></td>
28              </tr>
29              <% } %>
30              
31      </table>
32      
33      
34   </body>

    6.顯示

    

三、學習過程中遇到的問題

  1.在連接sqlserver 數據庫時 出現了 這個問題。

   問題:驅動程序無法通過使用安全套接字層(SSL)加密與 SQL Server 建立安全連接。錯誤:“Server key”。

   解決方法:

      這個問題是JDK與數據庫之間的安全秘鑰的問題。

      

     方案就是:

 

    1.下載兩個jar包

 

      1.bcprov-ext-jdk15on-1.54.jar

 

      2.bcprov-jdk15on-1.54.jar

 

      下載地址在:http://download.csdn.net/detail/cw_hello1/9557049

 

    2.將下載的兩個JAR文件復制到:JDK安裝目錄\jre\lib\ext下,例如我的就是D:\Program Files (x86)\java\JDK1.6\jre\lib\ext

 

    3.打開java.security文件:在JDK安裝目錄\jre\lib\security下的java.security文件。

 

      找到security.provider.1=sun.security.provider.Sun換成

 

      security.provider.1=org.bouncycastle.jce.provider.BouncyCastleProvider

 

    重新執行連接數據庫程序就可以。 這個方法轉自:http://blog.csdn.net/cw_hello1/article/details/51740893

 

 今天的學習就先到這裡了,明天繼續。

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved