4.复习笔记(这个就是课后习题以及课程所呈现的需求)
这节课主要讲的就是JavaBean,其实就是一个类,然后把网页元素放到javaBean里去,然后显示到网页中去
5.自测代码
2.课堂笔记
①去掉action(form的)
②加入<%%>,判断用户名是否传过来
如果传过来
<%if(request.getParameter("userName")==null)
{
%>
③在form后面添加
<%
}
else
{
%>
然后剪切show.jsp的代码过来,贴到后面
<jsp:useBean id="u" class="javastudy.UserInfo"><%--//创建对象 --%>
<%--=UserInfo u=new UserInfo() --%>
</jsp:useBean>
<jsp:setProperty name="u" property="*" /><%--设置对象的属性 --%>
<jsp:getProperty name="u" property="userName" /><br/><%--定义是id,使用是name,一定要注意 --%>
<jsp:getProperty name="u" property="vip" /><br/>
<jsp:getProperty name="u" property="password" /><br/>
<jsp:getProperty name="u" property="realName" /><br/>
<jsp:getProperty name="u" property="telephone" /><br/>
<jsp:getProperty name="u" property="address" /><br/>
<jsp:getProperty name="u" property="zip" /><br/>
<jsp:getProperty name="u" property="email" /><br/>
④在body前面,剪切的代码后面加上<%}%>
小结:这个就像是if(条件)
{
表单
}
else
{
提交内容
}
2.简单的有索引的bean
①定义一个变量并定义names数组,做好各个设置函数
package javastudy;
public class NamesBean
{
String[] names= {"Marry","Mike","Jenny","John"};
public String[] getNames() {
return names;
}
public String getNames(int index)
{
return names[index];
}
public void setNames(String[] names)
{
this.names = names;
}
public void setNames(String names,int index)
{
this.names[index] = names;
}
}//尾部
3.<jsp:setProperty name="对象名" property="?"/>用提交上来的由property指定的参数填充由property指定的属性的值
①做一个javabean
package javastudy;
public class User
{
String name;
int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
②做一个页面test.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<%
request.setCharacterEncoding("UTF-8");
%>
<body>
<table>
<tr><td>姓名</td><td><input type="text" name="name"></td></tr>
<tr><td>年龄</td><td><input type="text" name="age"></td></tr>
<tr><td colspan="2"><input type="submit" value="保存数据"></td></tr>
<!--<tr><td></td></tr>-->
</table>
</body>
</html>
**********接下来做提交数据的事情*************
①先做一条横线
②做判断
③创建对象接受传过来的值
接收哪里传过来的值,javabean里有name和age
哦,我要新建一个对象,这个和new javabean是一样的道理
<jsp:useBean id="user" class="javastudy.User"></jsp:useBean>
④接下来我要赋值,最简单的,那边叫什么名字,我这里就叫什么名字
<jsp:setProperty name="user" property="*"/>
⑤接下来我要显示它
保存一下代码
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<%
request.setCharacterEncoding("UTF-8");
%>
<body>
<form>
<table>
<tr><td>姓名</td><td><input type="text" name="name"></td></tr>
<tr><td>年龄</td><td><input type="text" name="age"></td></tr>
<tr><td colspan="2"><input type="submit" value="保存数据"></td></tr>
</table>
</form>
<hr>
<%
if(request.getParameter("name")!=null)
{
%>
<jsp:useBean id="user" class="javastudy.User"></jsp:useBean>
<jsp:setProperty name="user" property="*"/>
<jsp:getProperty name="user" property="name"></jsp:getProperty><br />
<jsp:getProperty name="user" property="age"></jsp:getProperty><br />
<%
}
%>
</body>
</html>
4.<jsp:setProperty name="对象名" property="?" value="?"/>用value指定的值来替换property指定的属性的值
①进行修改
主要修改地方
i.
<jsp:useBean id="user" class="javastudy.User"></jsp:useBean>
<jsp:setProperty name="user" property="name" param="a"></jsp:setProperty>
<jsp:setProperty name="user" property="age" param="b"></jsp:setProperty>
<jsp:getProperty name="user" property="name"></jsp:getProperty><br />
<jsp:getProperty name="user" property="age"></jsp:getProperty><br />
ii.
<tr><td>姓名</td><td><input type="text" name="a"></td></tr>
<tr><td>年龄</td><td><input type="text" name="b"></td></tr>
iii.
if(request.getParameter("a")!=null)
所有代码如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<%
request.setCharacterEncoding("UTF-8");
%>
<body>
<form>
<table>
<tr><td>姓名</td><td><input type="text" name="a"></td></tr>
<tr><td>年龄</td><td><input type="text" name="b"></td></tr>
<tr><td colspan="2"><input type="submit" value="保存数据"></td></tr>
</table>
</form>
<hr>
<%
if(request.getParameter("a")!=null)
{
%>
<jsp:useBean id="user" class="javastudy.User"></jsp:useBean>
<jsp:setProperty name="user" property="name" param="a"></jsp:setProperty>
<jsp:setProperty name="user" property="age" param="b"></jsp:setProperty>
<jsp:getProperty name="user" property="name"></jsp:getProperty><br />
<jsp:getProperty name="user" property="age"></jsp:getProperty><br />
<%
}
%>
</body>
</html>
3.<jsp:setProperty name="对象名" property="?"/>用提交上来的由property指定的参数填充由property指定的属性的值
①修改表单中的姓名和年龄的名称改为原来的name和age
②if的语句中判断条件也要改成name
③然后setPrpperty="name"后面可以不写
具体代码如下:
<tr><td>姓名</td><td><input type="text" name="name"></td></tr>
<tr><td>年龄</td><td><input type="text" name="age"></td></tr>
<tr><td colspan="2"><input type="submit" value="保存数据"></td></tr>
</table>
</form>
<hr>
<%
if(request.getParameter("name")!=null)
{
%>
<jsp:useBean id="user" class="javastudy.User"></jsp:useBean>
<jsp:setProperty name="user" property="name"></jsp:setProperty>
<jsp:setProperty name="user" property="age"></jsp:setProperty>
<jsp:getProperty name="user" property="name"></jsp:getProperty><br />
<jsp:getProperty name="user" property="age"></jsp:getProperty><br />
4.<jsp:setProperty name="对象名" property="?" value="?"/> 用value指定的值来替换property指定的属性的值
①只要在前面的基础上改一改就好了
<jsp:useBean id="user" class="javastudy.User"></jsp:useBean>
<jsp:setProperty name="user" property="name"></jsp:setProperty>
<jsp:setProperty name="user" property="age" value="50"></jsp:setProperty>
<jsp:getProperty name="user" property="name"></jsp:getProperty><br />
<jsp:getProperty name="user" property="age"></jsp:getProperty><br />