在JSP中应用JavaBean
1.解决中文乱码的JavaBean
在JSP页面中,处理中文字符经常会出现字符乱码的现象,特别是通过表单传递中文数据时容易产生。它的解决办法有很多,如将request的字符集指定为中文字符集,编写JavaBean对乱码字符进行转码等。
2. 在JSP页面中用来显示时间的JavaBean
JavaBean是用java语言所写的可重用组件,它可以是一个实体类对象,也可以是一个业务逻辑的处理,但编写JavaBean要遵循JavaBean规范。下面通过实例在JSP页面中调用获取当前时间的JavaBean。
实例:在网页中创建一个简易的电子时钟
(1)创建名称为DateBean的类,将其放置于dao包中,主要对当前时间、星期进行封装。
1 package dao; 2 3 import java.text.SimpleDateFormat; 4 import java.util.Calendar; 5 import java.util.Date; 6 7 public class DateBean { 8 private String dateTime; 9 private String week; 10 private Calendar calendar = Calendar.getInstance(); 11 /** 12 * 获取当前日期及时间 13 * @return 日期及时间的字符串 14 */ 15 public String getDateTime() { 16 //获取当前时间 17 Date currDate = Calendar.getInstance().getTime(); 18 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH点mm分ss秒"); 19 //格式化日期时间 20 dateTime = sdf.format(currDate); 21 return dateTime; 22 } 23 /** 24 * 获取星期几 25 * @return 返回星期字符串 26 */ 27 public String getWeek() { 28 String[] weeks = {"星期日","星期一","星期二","星期三","星期四","星期五","星期六"}; 29 int index = calendar.get(Calendar.DAY_OF_WEEK); 30 week = weeks[index-1]; 31 return week; 32 } 33 }
(2)创建名称为clock.jsp的页面,它是程序中的主页。在clock.jsp页面中实例化DateBean对象,并获取当前日期时间及星期实现电子时钟效果。
1 <%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3 <% 4 String path = request.getContextPath(); 5 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 6 %> 7 8 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 9 <html> 10 <head> 11 <base href="<%=basePath%>"> 12 <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/> 13 <title>电子时钟</title> 14 15 <meta http-equiv="pragma" content="no-cache"> 16 <meta http-equiv="cache-control" content="no-cache"> 17 <meta http-equiv="expires" content="0"> 18 <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> 19 <meta http-equiv="description" content="This is my page"> 20 <!-- 21 <link rel="stylesheet" type="text/css" href="styles.css"> 22 --> 23 24 <style type="text/css"> 25 #clock{ 26 420px; 27 height:80px; 28 background:#E0E0E0; 29 font-size:25px; 30 font-weight:bold; 31 border:solid 5px orange; 32 padding:20px; 33 } 34 #week{ 35 padding-top:15px; 36 color:#0080FF; 37 } 38 </style> 39 <meta http-equiv="Refresh" content="1"/> 40 </head> 41 <body> 42 <jsp:useBean id="date" class="dao.DateBean" scope="application"></jsp:useBean> 43 <div align="center"> 44 <div id="clock"> 45 <div id="time"> 46 <jsp:getProperty property="dateTime" name="date"/> 47 </div> 48 <div id="week"> 49 <jsp:getProperty property="week" name="date"/> 50 </div> 51 </div> 52 </div> 53 </body> 54 </html>
3. 数组转换成字符串
在程序开发中,将数组转换成为字符串是经常被用到的,如表单中的复选框按钮,在提交之后就是一个数组对象,由于数组对象在业务处理中不方便,所以在实际应用中通过将其转换成字符串后再进行处理。