1、按照信息编号进行排序。
sql: select * from info order by id asc 按照编号id升序排列。
sql: select * from info order by id desc 按照编号id降序排列。
2、信息列表需要隔行变色。
<c:forEach var="news" items="${list }" varStatus="status">
<tr <c:if test="${status.count%2==0 }">bgcolor="#CCCCCC"</c:if> >
<td>${news.id }</td>
<td>${news.title }</td>
<td>${news.content }</td>
<td>${news.issuancedate }</td>
<td>${news.issuanceuser }</td>
</tr>
</c:forEach>
注意<tr>的color属性是字体的颜色,bgcolor是元素的背景属性。
varStatus属性:循环当前的状态。
count属性:从1开始进行计数。
3、javascript验证日期格式。
4、加载jsp后弹出警告框。
下面是Java脚本:
<%
String erroinfo=(String)request.getAttribute("info");
if(erroinfo!=null){
%>
<script type="text/javascript">
alert("<%=erroinfo%>");
window.location.href="<%=request.getContextPath()%>/DisplayNews";
</script>
<%} %>
弹出警告框后,单击确定,跳转到一个处理显示新闻的servlet,然后跳转到显示新闻的jsp。
5、oracle数据库中序列的使用。
首先创建序列:>sql:create sequence id_seq;
设置其参数:
INCREMENT BY 1 每次加几个
START WITH 1 从1开始计数
NOMAXVALUE 不设置最大值
NOCYCLE 一直累加,不循环
CACHE 10 缓存
可以使用sequence的地方:
不包含子查询、snapshot、VIEW的 SELECT 语句
INSERT语句的子查询中
INSERT语句的VALUES中
UPDATE 的 SET中
使用序列可以实现,在插入数据时,主键id可以自增1。插入新闻数据的sql语句如下:
String sql="insert into info (id,title,content,issuancedate,issuanceuser)values (id_seq.nextval,?,?,?,?) ";
第一次NEXTVAL返回的是初始值,随后的NEXTVAL会自动增加你定义的INCREMENT BY值,然后返回增加后的值。CURRVAL 总是返回当前SEQUENCE的值,但是在第一次NEXTVAL初始化之后才能使用CURRVAL,否则会出错。
一次NEXTVAL会增加一次SEQUENCE的值,所以如果你在不同的SQl语句里面使用NEXTVAL,其值是不一样的。
6、将String数据类型与java.util.date类型的相互转换,以及将java.util.date类型与java.sql.date类型的相互转换。
将String转换成java.util.date
String strdate="2011-02-12";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date utildate=sdf.parse(date);
将java.util.date转换成String,用指定的格式进行转换
Date d = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
sdf.format(d);
java.util.date to java.sql.date
Date sqldate=new Date(utildate.getTime());
从数据库中获取date
resultset.getDate("issuancedate");