摘要:新建一個項目選擇自己的文件勾選項目構造如下設置項目配置快捷鍵選擇配置紅色框選擇時,運行成功會會自動運行下方的鏈接測試運行出現如下便創建成功編寫第一個代碼,測試環境是否設置成功第一個設置響應內容類型實際的邏輯是
新建一個servlet項目
Flies --> new --> project-->ProjectSDK選擇自己的JDK文件-->勾選Web Appliction -->Next
項目構造如下: 設置項目配置File --> Project Structure (快捷鍵:Ctrl + Shift + Alt + S) --> 選擇Module :
配置Tomcat
紅色框選擇時,運行成功會會自動運行下方的URL鏈接
出現如下便創建成功
@WebServlet("/firstServlet") public class test extends HttpServlet { private String message; @Override public void init() throws ServletException { message = "第一個servlet"; } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 設置響應內容類型 // response.setContentType("text/html"); response.setHeader("Content-type","text/html;charset=UTF-8"); // 實際的邏輯是在這里 PrintWriter out = response.getWriter(); out.println("" + message + "
"); } public void destroy() { // 什么也不做 } }
注解@WebServlet是設置該類的URL,也可以在web.xml里設置,如下:
test //設置該servlet的名字,可以隨便定義test.test //對應的java的文件(包名.類名)test //上面定義的名字/HelloWorld //自己定義URL
運行Tomcat,打開瀏覽器輸入http://localhost:8080/firstServlet或者http://localhost:8080/HelloWorld結果:
開始編寫登陸注冊模板 首先要先配置JDBC,編寫連接數據庫工具類資源:mysql-connector-java-5.1.39-bin.jar
鏈接:http://note.youdao.com/notesh...
public class connectionUtil { private static String driver; private static String url; private static String username; private static String password; static { try { //獲取配置文件的信息 driver = "com.mysql.jdbc.Driver"; url = "jdbc:mysql://localhost:3306/test"; username = "root"; // password = "admin"; password = "touwen"; //加載驅動類 Class.forName(driver); } catch (ClassNotFoundException e) { e.printStackTrace(); } } public static Connection getConnection() throws SQLException { return DriverManager.getConnection(url,username,password); } public static void release(Connection connection, Statement statement, ResultSet resultSet) { if (resultSet != null) { try { resultSet.close(); } catch (SQLException e) { e.printStackTrace(); } } if (statement != null) { try { statement.close(); } catch (SQLException e) { e.printStackTrace(); } } if (connection != null) { try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } } } }編寫注冊登錄邏輯
注冊邏輯
@WebServlet("/registered") public class registered extends HttpServlet { public registered(){ super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String username = new String(request.getParameter("username").getBytes("ISO8859-1"),"UTF-8"); String password1 = request.getParameter("password1"); String password2 = request.getParameter("password2"); if(password1 == null || password2 == null){ System.out.println("請輸入密碼"); } if(password1.equals(password2)){ Connection conn = null; ResultSet rs = null; PreparedStatement ptst = null; try{ conn = connectionUtil.getConnection(); String sql = "SELECT username FROM user"; ptst = conn.prepareStatement(sql); rs = ptst.executeQuery(); while (rs.next()) { if(username.equals(rs.getString("username"))){ System.out.println("用戶名已存在"); return; } } String ins = "insert into user(username,password) values (?,?)"; ptst = conn.prepareStatement(ins); ptst.setString(1,username); ptst.setString(2,password1); int i = ptst.executeUpdate(); if(i==1) { System.out.println("注冊成功"); }else { System.out.println("注冊失敗"); } } catch (SQLException e) { e.printStackTrace(); }finally { connectionUtil.release(conn,ptst,rs); } }else { System.out.println("兩次密碼不一致"); } } // 處理 POST 方法請求的方法 public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
登錄邏輯
@WebServlet("/login") public class login extends HttpServlet { public login(){ super(); } @Override // 處理 POST 方法請求的方法 public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ Connection conn = null; PreparedStatement ptst = null; ResultSet rs = null; String username = new String(request.getParameter("username").getBytes("ISO8859-1"),"UTF-8"); String password = request.getParameter("password"); if(username == null || password == null){ System.out.println("請輸入賬號或者密碼"); } try { conn = connectionUtil.getConnection(); String sql = "SELECT * FROM user where username = ?"; ptst = conn.prepareStatement(sql); ptst.setString(1,username); rs = ptst.executeQuery(); while (rs.next()){ if(password.equals(rs.getString("password"))){ System.out.println("登陸成功"); }else { System.out.println("賬號密碼不正確"); } } } catch (SQLException e) { e.printStackTrace(); }finally { connectionUtil.release(conn,ptst,rs); } } }
如果一直連接不上數據庫時,需要在java的運行環境外部也需要導入JDBC的包,路徑是安裝的java文件夾下的jrelibext
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/75222.html
摘要:元素用于指定過濾器的完整的限定類名。除此之外,過濾器不會被調用。參數用于訪問后續過濾器。還可以為指定目標資源為某個,例如當用戶訪問時,會執行名字為的,這時會執行過濾器。防止中文亂碼過濾器項目使用框架時。 文章首發在CSDN博客,轉載請務必注明以下所有鏈接,否則考慮法律追究責任。 CSDN地址:http://blog.csdn.net/tzs_1041218129/article/det...
摘要:時間年月日星期三說明本文部分內容均來自慕課網。慕課網教學示例源碼無個人學習源碼第一章概述課程介紹及介紹課程目標認識并理解及其應用,并能根據其實現原理自行實現。 時間:2017年3月22日星期三說明:本文部分內容均來自慕課網。@慕課網:http://www.imooc.com教學示例源碼:無個人學習源碼:https://github.com/zccodere/s... 第一章:概述 1-...
摘要:其簡陋的頁面讓人不忍直視,但更新到系列后,像脫胎換骨一般好用這篇博客記錄我個人在使用過程中遇到過的坑,每個坑位都會附上詳細的填坑辦法環境參數服務直接注冊失敗常見的注冊失敗問題可以分為以下兩種服務端與客戶端不在同一臺服務器上提示安全校驗不通過 Spring Boot Admin 1.x其簡陋的頁面讓人不忍直視,但更新到2.x系列后,像脫胎換骨一般好用 這篇博客記錄我個人在使用Spring...
閱讀 3444·2021-11-08 13:20
閱讀 3371·2021-09-30 09:48
閱讀 2568·2021-09-29 09:41
閱讀 596·2021-09-22 15:04
閱讀 2480·2021-08-23 09:44
閱讀 3678·2020-12-03 17:26
閱讀 1013·2019-08-30 14:10
閱讀 1571·2019-08-29 18:34