真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么看待Servlet和Jsp知識點

怎么看待Servlet和Jsp知識點,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比蕭山網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式蕭山網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋蕭山地區(qū)。費用合理售后完善,十載實體公司更值得信賴。

    1.首先需要一些工具:

        tomcat,MySQL,Navicat For mysql,eclipse(javaee)

    2.創(chuàng)建數(shù)據(jù)庫

    3.新建一個web項目

        注意是Dynamic Web Project,module version選擇2.5或者3.0都可以

    4.部署tomcat

        新建server,完成后完成以下配置,這樣就能在eclipse里直接用tomcat服務(wù)器了。這里如果選擇第一個的話,eclipse會自己下載一個簡易版的tomcat。

        怎么看待Servlet和Jsp知識點

    5.整體把握

        實現(xiàn)網(wǎng)頁對數(shù)據(jù)庫的查詢或者新增,需要MVC開發(fā)模式,這里畫了一個圖,大概就是這樣:

        怎么看待Servlet和Jsp知識點

    6.寫代碼的順序是從下到上:pojo層---Dao層---Service層---servlet層

        6.1pojo層代碼編寫:

                寫一個與數(shù)據(jù)庫對應(yīng)的類,包名以.pojo結(jié)尾。set get方法、構(gòu)造方法、無參構(gòu)造方法和toString方法都寫一遍,反正alt+s自動生成。

package com.pojo;

public class User {
	private int uid;
	private String uname;
	private String pwd;
	private String sex;
	private int age;
	private String birth;
	public int getUid() {
		return uid;
	}
	public void setUid(int uid) {
		this.uid = uid;
	}
	public String getUname() {
		return uname;
	}
	public void setUname(String uname) {
		this.uname = uname;
	}
	public String getPwd() {
		return pwd;
	}
	public void setPwd(String pwd) {
		this.pwd = pwd;
	}
	public String getSex() {
		return sex;
	}
	public void setSex(String sex) {
		this.sex = sex;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getBirth() {
		return birth;
	}
	public void setBirth(String birth) {
		this.birth = birth;
	}
	public User(int uid, String uname, String pwd, String sex, int age, String birth) {
		super();
		this.uid = uid;
		this.uname = uname;
		this.pwd = pwd;
		this.sex = sex;
		this.age = age;
		this.birth = birth;
	}
	public User() {
		super();
	}
	@Override
	public String toString() {
		return "User [uid=" + uid + ", uname=" + uname + ", pwd=" + pwd + ", sex=" + sex + ", age=" + age + ", birth="
				+ birth + "]";
	}
	
}

        6.2Dao層代碼編寫

                    6.2.1接口
package com.dao;

import java.util.List;

import com.pojo.User;

public interface UserDao {
	//登錄
	User checkUserLoginDao(String uname,String pwd);

	//密碼修改
	int userChangePwdDao(String newPwd, int uid);

	//顯示所有信息
	List showAllDao();
	
	//插入用戶
	int userRegDao(String uname, String pwd, String sex, String age, String birth);
}
                6.2.2接口的實例化對象

                        這里以一個插入和查詢的方法為例,按照基本步驟來就可以。

                        查詢:

public User checkUserLoginDao(String uname, String pwd) {
		//創(chuàng)建jdbc對象
		Connection conn = null;
		PreparedStatement ps = null;
		ResultSet rs = null;
		//創(chuàng)建實體類對象
		User u = null;
		try {
			//加載驅(qū)動
			Class.forName("com.mysql.jdbc.Driver");
			//獲取連接
			conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test2","root","lijingjing");
			//創(chuàng)建sql語句
			String sql = "select * from t_user where uname=? and pwd=?";
			//創(chuàng)建sql對象
			ps = conn.prepareStatement(sql);
			//給占位符賦值
			ps.setString(1, uname);
			ps.setString(2, pwd);
			//?執(zhí)行sql
			rs = ps.executeQuery();
			//遍歷結(jié)果集
			while(rs.next()) {
				u = new User();
				u.setAge(rs.getInt("age"));
				u.setUid(rs.getInt("uid"));
				u.setBirth(rs.getString("birth"));
				u.setPwd(rs.getString("pwd"));
				u.setSex(rs.getString("sex"));
				u.setUname(rs.getString("uname"));
			}
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			try {
				rs.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			try {
				ps.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			try {
				conn.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		
		return u;
	}

                插入的代碼流程和查詢大同小異,不同在于不需要rs結(jié)果集,返回值為int類型(表示受影響的行數(shù)),index = ps.executeUpdate();

                另外為保證中文能夠在數(shù)據(jù)庫中正常顯示,在加載驅(qū)動這一步時,數(shù)據(jù)庫后面要加上?useUnicode=true&characterEncoding=UTF8

conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test2?useUnicode=true&characterEncoding=UTF8","root","lijingjing");

                這樣數(shù)據(jù)訪問層就寫完了。

        6.3Service層代碼編寫

                6.3.1接口

                        一般這一層會對從Dao層取到的數(shù)據(jù)進(jìn)行業(yè)務(wù)邏輯處理,這里只是簡單的返回。

package com.service;

import java.util.List;

import com.pojo.User;

public interface UserService {
	
	//登錄
	User checkUserLoginService(String uname,String pwd);

	//修改密碼
	int userChangePwdService(String newPwd, int uid);

	//展示所有用戶信息
	List showAllService();

	//注冊
	void userRegService(String uname, String pwd, String sex, String age, String birth);
}
            6.3.2接口的實例化對象

                    繼承上面的接口,實現(xiàn)其方法,創(chuàng)建Dao層對象,返回即可,代碼不上了。

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。


網(wǎng)站名稱:怎么看待Servlet和Jsp知識點
網(wǎng)站網(wǎng)址:http://weahome.cn/article/pddshp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部