当前位置: 代码迷 >> JavaScript >> jsp页面应用java代码
  详细解决方案

jsp页面应用java代码

热度:184   发布时间:2012-10-08 19:54:56.0
jsp页面使用java代码

以前,我不喜欢在jsp页面中,直接使用java代码块,镶嵌java代码,但是工作之后,使用了这种情况之后,我改变了初衷,其实它也有他的方便之处呀!

<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ page
	import="java.util.*,org.springframework.context.ApplicationContext"%>
<%@ page
	import="org.springframework.web.context.support.WebApplicationContextUtils"%>
<%@page import="com.hdsm.xxcj.tnbhzsfb.*;"%>
<%@ include file="../../public/jsp_top.jsp"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://"
			+ request.getServerName() + ":" + request.getServerPort()
			+ path + "/";
	TnbsfbMain main = (TnbsfbMain) ctx.getBean("tnbsfbmain");
	String str = request.getParameter("id").toString();
	Iterator it = main.find_onesfb(str);
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<base href="<%=basePath%>">

		<title>编辑随访记录</title>

		<meta http-equiv="pragma" content="no-cache">
		<meta http-equiv="cache-control" content="no-cache">
		<meta http-equiv="expires" content="0">
		<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
		<meta http-equiv="description" content="This is my page">
		<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
		</head>

	<body>
		<form name="form1" action="" target="middleFrame" method="post">
		<%
					while (it.hasNext()) {
					Map map = (Map) it.next();
			%>
			<table class="table_info2" border="1">
				<tr style="border: thin">
					<td colspan="5" align="center">
						<h3>
							<strong>修改糖尿病患者随访记录</strong>
						</h3>
						<input type="hidden" name="id" id="id" value="<%=str%>">
						<input type="hidden" name="CV5101_27_ALL" id="CV5101_27_ALL"
							value="">
					</td>
				</tr>
				<tr>
								<tr>
				<td >
						体质指数:					</td>
					<td>
						<input type="text" name="PWNUM" id="PWNUM" class="text_2"onBlur="checkPrecent('PWNUM');"
						value="<%=map.get("PWNUM") == null ? "" : map
						.get("PWNUM").toString()%>">
				  </td>
					<td >
						足背动脉搏动:
					</td>
					<td>
						<input type="radio" name="FOOTWAVE" id="FOOTWAVE" value="1"
							<% if ("1".equals(map.get("FOOTWAVE"))){%> checked="checked" <%}%>>
						未触及
						<input type="radio" name="FOOTWAVE" id="FOOTWAVE" 
						<% if ("2".equals(map.get("FOOTWAVE"))){%> checked="checked" <%}%>>
						触及</td>		
				</tr>
								<tr>
					<td >
						医生签名:					</td>
					<td colspan="4">
						<input type="text" name="DECTORNAME" id="DECTORNAME" class="text_2" value="<%=map.get("DECTORNAME")==null?"":map.get("DECTORNAME").toString()%>">
					</td>
				</tr>
				<tr>
					<td >
						下次随访日期:					</td>
					<td colspan="4">
						<input type="text" name="NEXT_V_TIME_YEAR" size="5" onBlur="checkYear('NEXT_V_TIME_YEAR');"
						value="<%=map.get("NEXT_V_TIME")==null?"":map.get("NEXT_V_TIME").toString().substring(0, 10).split("-")[0]%>">
						年
						<input type="text" name="NEXT_V_TIME_MONTH" size="3" onBlur="checkMonth('NEXT_V_TIME_MONTH');"
						value="<%=map.get("NEXT_V_TIME")==null? "":map.get("NEXT_V_TIME").toString().substring(0, 10).split("-")[1]%>">
						月
						<input type="text" name="NEXT_V_TIME_DAY" size="3" onBlur="checkDay('NEXT_V_TIME_DAY');"
						value="<%=map.get("NEXT_V_TIME")==null? "":map.get("NEXT_V_TIME").toString().substring(0, 10).split("-")[2]%>">						
						日
					</td>
				</tr>
				<tr>
					<td colspan="5" height="5"></td>
				</tr>
				<tr>
					<td align="center" class="coolbutton" style="cursor: hand"
						colspan="5">
						<img src="<%=basePath%>images/queding.gif" width="51" height="20"
							onClick="find_dq();">
						&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
						<img src="<%=basePath%>images/quxiao.gif" width="51" height="20"
							onClick="window.close();">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
						<img src="<%=basePath%>images/dayin.gif" width="51" height="20"
							onClick="print_yl()">							
					</td>
				</tr>
			</table>
			<%} %>
		</form>
	</body>
</html>

?

?

?总结:

我们看到,我是在页面的上方,通过java代码,来条用action中的方法,获取一个iterator,然后将其转换为map类型,

然后通过map.get(列名)进行获取赋值的,但要注意,进行是否为空的逻辑判断方可以及三目运算符的使用;

1 楼 yyqhs 2010-05-29  
在jsp页面中直接编写java代码会使页面的可读性和可维护性变得非常差,楼主的代码就是一个很好的反面教材。本来jsp页面中就不应该掺杂业务逻辑,jsp页面应该只有数据显示的功能,再说在jsp页面中直接编写java代码是不是更加方便还要打上一个大大的问号,本人更倾向于使用JSTL。
2 楼 allenny 2011-03-29  
刚开始编程时曾经用这种方式写过一个JSP,一千多行,嵌套十几层判断,结果最后无法维护。新手还是多吸取前人的经验。
  相关解决方案