Skip to content

Latest commit

 

History

History
279 lines (169 loc) · 5.58 KB

File metadata and controls

279 lines (169 loc) · 5.58 KB

JAVA servelet

安裝

下載tomcat,並且解壓縮

下載MSSQL jar 加入lib

設定MSSQL登入驗證使用SQL驗證並且更改他的權限

安裝

{% embed url="https://pclevinblog.pixnet.net/blog/post/314562670-%5Bapache\_tomcat%5D-eclipse-裡tomcat-安裝教學" %}

Eclipise設定

利用form取得資訊

Hellow world

package ch3.servletbegin;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/AA")
public class MyServlet02 extends HttpServlet {
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		PrintWriter out =resp.getWriter();
		out.write("hello");
		out.close();
		
	}
}

利用XML更改初始參數,讓廠商可以不用動到程式碼修改

servlet context

sync and sleep

package ch5.ServletLifeCycle;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class S01_testinit
 */
@WebServlet(value="/S03_testinit2",loadOnStartup=5)
public class S03_testinit2 extends HttpServlet {
	private static final long serialVersionUID = 1L;
    
	int count=0;
	
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		synchronized(this) {
			int localcount=++count;
		}
		try {
			Thread.sleep(2000);
		}catch(InterruptedException e) {
			e.printStackTrace();
		}
		
		
		response.getWriter().write("count"+count);
		response.getWriter().close();
		
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}
	
	@Override
	public void destroy() {
		System.out.println("destroy");
		
	}

}

4/21檔案上傳

html

Javaservlet

iE 取得檔案名稱

多檔案上傳

重新導向網頁

假裝的重新導向

4/21MVC架構

cookie 存取

Session

Cookie

Session發號碼牌,取號碼牌

CH10 JDBC

SQL

大絕招,設定SA

code

public class S01_jdbc extends HttpServlet {
	private static final long serialVersionUID = 1L;

	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		String connectionUrl = "jdbc:sqlserver://localhost:1433;databaseName=mike;user=kirito;password=c8763";
		try {
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
			Connection conn = DriverManager.getConnection(connectionUrl);

			Statement state = conn.createStatement();
			ResultSet rs = state.executeQuery("Select * from House");

			while (rs.next()) {
				System.out.println(rs.getString(1) + "," + rs.getString(2));

			}
			rs.close();
			state.close();
			conn.close();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		doGet(request, response);
	}

}

JNDI,需要設定兩個XML,一個在tomcat,一個在webXML

注意還是需要JDBC的檔案

DAO