前端發(fā)送請求的方式
form表單action? <a>
form表單提交方式 get post
get提交顯示url顯示(顯示參數(shù)值谈宛,參數(shù)名)不安全
post提交顯示url不顯示(顯示參數(shù)值平酿,參數(shù)名)糯彬,安全
action="頁面地址/servlet"
<input type="hidden" value="servlet?name=hid" name="name">
<a href="/serlvet?log=h&opr=opr">
a標(biāo)簽傳遞參數(shù)用棚愤?name=value,多個參數(shù)用&隔開
servlet接收參數(shù)
String name=request.getParamenter("name");
接收多個參數(shù)
. String[] getParameterValues(String name):根據(jù)參數(shù)名稱獲取參數(shù)值的數(shù)組? hobby=xx&hobby=game
String[] hobbies= request.getParameterValues("hobby");
for (String hobby:hobbies){
? ? System.out.println(hobby);
}
調(diào)用service完成請求的處理
service? 層
service接口 對象名=new service實現(xiàn)類();
對象名.方法名([參數(shù)]);實現(xiàn)業(yè)務(wù)處理
創(chuàng)建service接口
public interface ServiceUser{
抽象方法;
[public static] 返回值類型 方法名([參數(shù)...]);
public List<User> test(Sting name);
}
service實現(xiàn)類
public void ServiceImpl implements ServiceUser{
@Override
public c List<User>test(Sting name)
獲取數(shù)據(jù)勤晚,處理數(shù)據(jù)
UserDao uo=new UserDaoImpl();
Result rs=uo.query();
if(rs!=null){
while(rs.next){
返回值類型? 屬性名=rs.get數(shù)據(jù)類型("列名");
String name=rs.getString("name");
int id=rs.getInt("id");
Date createDate = rs.getTimestamp("createDate");
川背。。规哪。求豫。
User u=new User();
u.setName(name);
u.setId(id);
u.setCreatedata(createDate);
}
}
}
}
dao
public interface UserDao{
public Result query();
}
public implement UserDaoImpl extends DataBase{
public Result query(){
String sql="select*from user";
Result rs=DataBasequery(sql);
return rs;
}
}
DataBase類
public void DataBasequery(String sql){
導(dǎo)入jar包
加載驅(qū)動
Class.forName("com.mysql.jdbc.Driver");
連接數(shù)據(jù)庫
Connection conn=DrivateManage.getConnection("jdbc:mysql://location:3306/數(shù)據(jù)庫名","root","root");
獲取sql處理對象
Statement stmt=conn.createStatement();
執(zhí)行sql
Result rs=stmt.executeQuery(sql);
return rs;
}
Serlvet
重定向
response.senRedirect("/login.jsp");
地址欄改變
請求兩次
轉(zhuǎn)發(fā)
request.getRequestDispatcher("login.jsp").forward(request,response);
地址欄不改變
請求一次
前臺往后臺傳值
request.setAttribute("he","hello");
導(dǎo)入jstl.jar standard.jar
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
${he}
<c:forEach var="news" items="${newsList}">
${news.id}
${news.name}
</forEach>