1.在jsp页面查询数据库中指定的信息,明明有数据为什么查询不出?
猜测原因:编码问题,数据库中的编码和页面中的编码不统一,导致页面中输入的中文字符,在数据库中变成乱码,从而页面上显示不出需要查询的信息。
解决方法:
1.1.各种编码要保持一致,
//在每个需要和数据库连接的jsp页面添加以下三句代码,
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@page import="java.sql.*"%>
<%request.setCharacterEncoding("UTF-8");%>
1.2.数据库建表的URL,在用JDBC链接数据库的时候,在驱动语句后加上,
如url=jdbc:mysql://127.0.0.1:3306/pbook?useUnicode=true&characterEncoding=UTF-8
1.3. 先查询数据库字符集情况,
SHOW VARIABLES LIKE '%colla%';
用Set charset utf8语句,把数据库中的编码格式都转换成utf8
2. 关于ResultSet的getRow()函数
rs.last() 是将游标移动到ResultSet 对象的最后一行,以便进行读取数据,默认是第一行的前面的。如果只返回一行数据,则使用rs.first()也是可以 的。比如返回总条数的时候。
ResultSet的getRow()函数的返回结果是当前数据集的行号,而不是结果的行数如果要获取行数,可以这样
- rs.last();
- int row=rs.getRow();
- rs.beforeFirst();
3.按钮没有src属性,这是错误的<button src="detail.jsp">返回</button> 要用"<inputοnclick="history.go(-1)" type="button" value="返回">" 或者用a链接标签<a href="detail.jsp"><button>返回</button></a>
4. 在登录页面输入的用户名,用request.getParameter()获取,
String n=request.getParameter("usercode");用session保存,request.getSession().setAttribute("user", t1);但是在首页显示为null??
//String n=request.getParameter("usercode");
//session.setAttribute("user", n);
//out.println(n);
//String user=(String)session.getAttribute("user");
解决办法:是因为我一个jsp文件中有两个session冲突了!这两句语句可以使用!
4.<base href="<%=basePath%>">是什么意思呢?
base标签的作用,是引入绝对路径,相对路径不在起作用
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<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">
</head>
5.文本框中的提示文件
<textarea class="message" value="Write Message Here" οnfοcus="this.value='';" οnblur="if(this.value.length < 1) this.value='Write Message Here';"></textarea>
<input name="usercode" type="text" size="20" placeholder="请输入用户名">
6.在jsp页面中怎么使用session保存数据库中获得的数据?
Login.jsp页面使用账号登录,在main.jsp主页面显示账号对应的用户名,然后想要保存该用户名,在留言板message.jsp页面使用该用户名?
7.min-width和min-height的用法,
min-height:为了是适用用户的屏幕大小,有些设计会适当地展开或收缩页面,在此类设计中,min-heigth指定一个盒子在浏览器窗口较窄的时候可以显示的最小高度!
div.test {
width: 200px;
min-height: 50px;
background-color: deepskyblue;
}
min-width:会继承父元素的width,而min-height不会。
如果无父元素,也就是最外层是body,则默认100% !!!此时要用浮动float:left;
div.test {
min-width: 50px;
min-height: 50px;
background-color: deepskyblue;
float: left;
}
Overflow:hidden —>让多余的内容不显示!
8. 如何防止用户跳过登录页面直接访问要登陆后才可以访问的页面呢?
用session!!
String t=(String)request.getSession().getAttribute("user");
if(t==null){
response.sendRedirect("login.jsp");
}else{
…
}
9.如何实现登录页面记住密码,用cookie实现。
https://blog.csdn.net/weixin_36380516/article/details/69356313
10.如何做到前端和服务器端的代码分开,不写在统一jsp页面,不是都放在WebContent中!
我写的大作业都是用jsp页面写的,想知道怎么更好的提高代码的可读性,把前端和后端分开写!一定要用到servlet吗?对servlet和web.xml文件不感冒,求教学习方法!
本文主要解答HTML、CSS和JavaScript初学者在学习过程中遇到的问题,包括JSP页面查询数据库时的编码问题、ResultSet的getRow()使用、按钮属性、session和cookie的应用以及前端后端分离的实现策略。
&spm=1001.2101.3001.5002&articleId=88580903&d=1&t=3&u=269f6b8fc1a74a148492ec178bf7ff39)
2043

被折叠的 条评论
为什么被折叠?



