Java Web 实例操作

注释:

1 、HTML注释:

<!-- -->

2、 jsp注释:

<%-- --%>

实例1 :九九乘法表

 <%for(int i=1;i<=9;i++)
    {
    for(int j=1;j<=i;j++)
    {
    out.print(j+"*"+i+"="+i*j+" ");
    }%>
    <br>
    <%
    } %>

实例2 :包含页面给被包含页面传两个double型参数,被包含页面接收参数计算和并显示。

传参的getParameter是字符串类型 ,获取值时都要进行类型转换。

doublechuancan.jsp:

<jsp:include page="double.jsp">
   <jsp:param value="2.0" name="d1"/>
   <jsp:param value="3.0" name="d2"/>
   </jsp:include>

double.jsp:

<%double d1=Double.parseDouble(request.getParameter("d1")); %>
    <%double d2=Double.parseDouble(request.getParameter("d2")); %>
    <%=d1+d2 %>

案例3:生成一个随机数,如果大于0.5跳转到一个页面,如果小于0.5跳转到另一个页面,并将随机数传过去,在跳转到的页面显示。

random1.jsp:

<%double random=Math.random(); 
 	if(random>0.5){%>
 	<jsp:forward page="random2.jsp">
 	<jsp:param value="<%=random%>" name="a1"/>
 	</jsp:forward>
 	<%}
 	else { %>
 	<jsp:forward page="random3.jsp">
 	<jsp:param value="<%=random%>" name="a2"/>
 	</jsp:forward>
 	<%} %>

random2.jsp:

	大于0.5的页面:
  	<%double a1=Double.parseDouble(request.getParameter("a1")); %>
    <%=a1%>

random3.jsp:

	 小于0.5的页面:
 	 <% double a2=Double.parseDouble(request.getParameter("a2"));%>
    <%=a2 %>

实例4 : 填写用户信息,用el标签输出

在这里插入图片描述

eluserinfo.jsp:

 <form action="eluserinfo1.jsp" method="post">
    用户名:<input type="text" name="name"><br>
        密码:<input type="text" name="mima"><br>
        性别:<input type="radio" name="sex" value="男">男
        <input type="radio" name="sex" value="女">女<br>
   爱好:<input type="checkbox" name="hobby" value="读书">读书
   <input type="checkbox" name="hobby" value="游戏">游戏
   <input type="checkbox" name="hobby" value="上网">上网
   <input type="checkbox" name="hobby" value="学习">学习<br>
  职业:<select name="job">
  <option value="学生">学生</option>
  <option value="教师">教师</option>
  <option value="工程师">工程师</option>
  <option value="其他">其他</option>
  </select>
  <br>
  	<input type="submit" value="注册">
  	<br>
  	<input type="reset" value="重填">
  	
    </form>

eluserinfo1.jsp:

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

 <%request.setCharacterEncoding("utf-8"); %>
    用户名:${param.name}<br>
    密码:${param.mima}<br>
    性别:${param.sex }
   爱好: <c:forEach items="${paramValues.hobby}" var="i">
    ${i}
    </c:forEach>
    <br>
   职业: <c:forEach items="${paramValues.job}" var="j">

    ${j}
    </c:forEach>

实例5 :创建一个圆的javabean,表单传半径,显示传来的半径并计算圆的面积。

circle.jsp:

 <form action="circle1.jsp" method="post">
    输入半径:<input type="text" name="r"><br>
    <input type="submit" value="ok">
    </form>

circle1.jsp:

 <jsp:useBean id="a" class="com.beans.Circle"></jsp:useBean>    
    <%-- id是对象--%>
    <jsp:setProperty property="*" name="a"/>
    <%--name是对象 --%>
	使用getProperty:<br>
	半径为:<jsp:getProperty property="r" name="a"/>  <br>   
	面积为:<jsp:getProperty property="s" name="a"/>  <br>   
	使用sessionScope:<br>
	半径为:${sessionScope.a.r }<br>
	面积为:${sessionScope.a.s }<br>
	使用bean属性方法:<br>
	半径为:<%=a.getR() %><br>
	面积为:<%=a.getS() %><br>

实例6 : 注册用户密码,javabean方法、getproperty方法显示

在这里插入图片描述

zhentian.jsp

<form action="zhentian1.jsp" method="post">
    	姓名:<input type="text" name="name"><br>
    	密码:<input type="text" name="password"><br>
    	年龄:<input type="text" name="age"><br>
    	<input type="submit" value="提交">
    	</form>

zhentian1.jsp

<%request.setCharacterEncoding("utf-8"); %>
  <jsp:useBean id="a" class="com.beans.Info"></jsp:useBean>
  <jsp:setProperty property="*" name="a"/>
	使用getProperty方法:<br> 
  用户名:<jsp:getProperty property="name" name="a"/><br>
    密码:<jsp:getProperty property="password" name="a"/><br>
    年龄:<jsp:getProperty property="age" name="a"/><br>
    使用Javabean方法:<br>
    用户名:<%=a.getName() %><br>
 密码:<%=a.getPassword() %><br>
 年龄:	<%=a.getAge() %><br>

实例7:简单显示当前时间

<%@page import="java.text.SimpleDateFormat"%>
<%@page import="java.util.Date" %>
<%Date date=new Date();
   SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-ddHH:mm:ss");
   String today=df.format(date);
    %>
    当前日期:<%=today %>

实例8:选择喜欢的球队 没有输出一个没也没有,用getparameterValues实现复选框

null.jsp

 <form action="null1.jsp" method="post">
    选择你喜欢的球队:<br>
    <input type="checkbox" name="item" value="湖人">湖人
    <input type="checkbox" name="item" value="热火">热火
    <input type="checkbox" name="item" value="骑士">骑士
    <input type="checkbox" name="item" value="雄鹿">雄鹿<br>
    <input type="submit" value="提交">
    </form>

null1.jsp

<%
   	request.setCharacterEncoding("utf-8");
   String itemname[]=request.getParameterValues("item"); 
    //获取CheckBox的值
    out.println("你喜欢的球队:");
    if(itemname==null)
    {
    out.print("一个也不喜欢");
    }
    else
    {
    for(int i=0;i<itemname.length;i++)
    {
    out.print(""+itemname[i]);
    }
    }
    %>

实例9:更新时间,每隔一秒刷新一次

timerefresh.jsp

 <%
    Date d=new Date();
    SimpleDateFormat s=new SimpleDateFormat("hh:mm:ss"); %>
    <%=s.format(d) %>
    <%response.setHeader("refresh", "1"); %>

实例10:幸运大抽奖

luck.jsp

 <%Random random=new Random(); %>
    <c:set var="luck" value="<%=random.nextInt(8) %>" scope="page"></c:set>
    <%--random.nextInt(8),返回[0,8) 集合中的整数,不包括8 --%>
    <c:choose>
    <c:when test="${pageScope.luck==3}">恭喜中了一等奖!</c:when>
    <c:when test="${pageScope.luck==4}">恭喜中了二等奖!</c:when>
    <c:when test="${pageScope.luck==5}">恭喜中了三等奖!</c:when>
    <c:otherwise>谢谢参与!
    <a href="">
    <button>再来一次</button></a>
    </c:otherwise>
    </c:choose>

实例11:利用servlet进行登录验证

userlogin.jsp:

 <form action="Myservlet" method="post">
    用户名:<input type="text" name="user"><br>
   密码:<input type="text" name="pwd"><br>
   <input type="submit" value="提交">
   
    </form>

Myservlet:

新建完servlet后,把映射地址去掉前面的部分

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

		doPost(request, response);
	}
public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		request.setCharacterEncoding("utf-8");
		String name=request.getParameter("user");
		String pwd=request.getParameter("pwd");
		if(name.equals("张三"))
		{
			if(pwd.equals("123"))
			{
				System.out.println("密码正确");
				HttpSession session=request.getSession();
				session.setAttribute("name",name);
				request.getRequestDispatcher("success.jsp").forward(request, response);
				
			}
			else{
				System.out.println("密码错误");
			}
		}
		else {
			System.out.println("用户名不存在");
		}
	}

success.jsp:


    <%=session.getAttribute("name") %>

案例12:JDBC 连接数据库 增删改查

<% try {  Class.forName("com.mysql.jdbc.Driver"); //加载MySQL驱动实例
String url = "jdbc:mysql://localhost:3306/employeeDB"; 
String username = "root";// 数据库用户名
String password = "root";// 数据库密码
Connection conn = DriverManager.getConnection(url,username,password); //建立连接
String sql = "select * from employee where age>? and salary>?";
//使用PreparedStatement对象里来构建SQL语句
PreparedStatement pstmt=conn.prepareStatement(sql);
pstmt.setInt(1,18);//使用set方法设置sql语句中第一个参数值为18,age为int类型
pstmt.setFloat(2,3000);;//设置sql语句中第二个参数值为3000,salary为float类型
        ResultSet rs=pstmt.executeQuery();//执行查询
out.print("<table border=2>");
            out.print("<tr>");
            out.print("<th width=100>员工号</th>");
            out.print("<th width=100>姓名</th>");
            out.print("<th width=50>年龄</th>");
            out.print("<th width=50>性别</th>");
            out.print("<th width=50>薪水</th>");
            out.print("<th width=50>部门</th>");
         out.print("</tr>");
while(rs.next()) //判断结果集还有没有数据
       {     out.print("<tr>");
             out.print("<td >"+rs.getInt(1)+"</td>"); 
             out.print("<td >"+rs.getString(2)+"</td>");
             out.print("<td >"+rs.getString("age")+"</td>"); 
             out.print("<td >"+rs.getString("sex")+"</td>"); 
             out.print("<td >"+rs.getFloat("salary")+"</td>");
             out.print("<td >"+rs.getString("department")+"</td>"); 
          out.print("</tr>") ; 
        }
out.print("</table>");
rs.close();
pstmt.close();
conn.close()  ; //关闭数据库连接
} catch (Exception e) { 
		out.print(e.getMessage());
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值