本文目录一览:
- 1、关于jsp连接mysql数据库注册用户代码的问题
- 2、jsp + mysql 会员登陆和注册代码怎么写,最好简单点,要能用的呀
- 3、求大神写一下jsp的简单的注册界面代码。
- 4、急求jsp连接mysql 用户注册界面代码 需要把输入的数据存入数据库
- 5、jsp连接mysql数据库注册用户代码的问题
关于jsp连接mysql数据库注册用户代码的问题
必须有jdbc的驱动,jdbc的意思是Java Data Base Connectivity,连接的时候需要他的驱动程序,不同的IDE编译环境有不同的导入方法。
但是总体步骤是你先下载JDBC的驱动,解压后有个jar文件,你将它导入到你的编译环境即可。
我这里提供两个mysql jdbc driver 的驱动下载地址。
1.javaeye提供的:
2.官网(英文):
关于jdbc的导入,你可以根据你使用的环境到网上搜一些资料,我这里就不提供了。
jsp + mysql 会员登陆和注册代码怎么写,最好简单点,要能用的呀
没错...
你使用什么服务器?
使用Tomcat,就把mysql的连接jar包放在%Tomcat%commonlib 下.
//下面是会员登录是验证部分...注册大部分类似,修改SQL语句..
%@ page contentType="text/html;charset=gb2312"%
%@ page import="java.sql.*"%
html
head
title用户登陆/title
/head
body
center
h1用户登陆案例 —— JSP + JDBC实现/h1
hr
br/
br/
%--
SQL注入漏洞
--%
%!
final String DBDRIVER = "com.jdbc.odbc.mysql" ;
final String DBURL = "jdbc:mysql://localhost:3306/test?user=rootpassword=useUnicode=truecharacterEncoding=GBK" ;
Connection conn = null ;
PreparedStatement pstmt = null ;
ResultSet rs = null ;
%
%
// 接收用户的真实姓名
String name = null ;
// 如果合法,则将flag变为true
boolean flag = false ;
String id = request.getParameter("id") ;
String password = request.getParameter("password") ;
String sql = "SELECT name FROM person WHERE id=? AND password=?" ;
try
{
Class.forName(DBDRIVER) ;
conn = DriverManager.getConnectionDBURL,DBUSER,DBPASSWORD) ;
pstmt = conn.prepareStatement(sql) ;
pstmt.setString(1,id) ;
pstmt.setString(2,password) ;
rs = pstmt.executeQuery() ;
if(rs.next())
{
name = rs.getString(1) ;
flag = true ;
}
rs.close() ;
pstmt.close() ;
conn.close() ;
}
catch(Exception e)
{
System.out.println(e) ;
}
%
%
if(flag)
{
// 用户合法
request.setAttribute("name",name) ;
%
jsp:forward page="login_success.jsp"/
%
}
else
{
// 用户非法
%
jsp:forward page="login_failure.htm"/
%
}
%
/center
/body
/html
求大神写一下jsp的简单的注册界面代码。
1.需要一个jsp页面:
//login.jsp核心代码:
form action="${pageContext.request.contextPath}/servlet/UserServlet" method="post"
input type="text" name="loginname" /input type="password" name="password"/
input type="submit" value="登录"/
/form
2.需要一个servlet来验证登录信息
//UserServlet 核心代码
class UserServlet extends HttpServlet{
protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {
process(request, response);
}
protected void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {
process(request, response);
}
private void process(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {
PrintWriter pw = response.getWriter();
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html");
String loginname = request.getParameter("loginname");
String password = request.getParameter("password");
//创建一个service来处理业务逻辑(包括查询数据库操作)
UserService service = new UserService();
boolean bool = service.validateUser(loginname,password);
if(!bool){
pw.println("用户名或密码错误");
}else{
pw.println("登录成功");
}
}
3.需要一个service处理业务逻辑(包括查询数据库操作)
//UserService 核心代码
public class UserService{
/**
*查询数据库验证用户是否存在,返回boolean
*/
public boolean validateUser(String loginname,String password){
boolean bool = false;
Connection conn = null;
PreparedStatement ps = null;
//这里以mysql为例
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "");
String sql = "select login_name,pass_word from t_user where login_name=? and pass_word=?";
ps = conn.prepareStatement(sql);
ps.setString(0, loginname);
ps.setString(1, password);
ResultSet rs = ps.executeQuery();
if(rs.next()){
bool = true;
}
} catch (Exception e) {
e.printStackTrace();
} finally{
try {
if(conn != null){
conn.close();
conn = null;
}
if(ps != null){
ps.close();
ps = null;
}
} catch (SQLException e) {
e.printStackTrace();
}
}
return bool;
}
}
急求jsp连接mysql 用户注册界面代码 需要把输入的数据存入数据库
有两种方法,一种方法使用mysql的check table和repair table 的sql语句,另一种方法是使用MySQL提供的多个myisamchk, isamchk数据检测恢复工具。前者使用起来比较简便。推荐使用。
1. check table 和 repair table
登陆mysql 终端:
mysql -uxxxxx -p dbname
check table tabTest;
如果出现的结果说Status是OK,则不用修复,如果有Error,可以用:
repair table tabTest;
进行修复,修复之后可以在用check table命令来进行检查。在新版本的phpMyAdmin里面也可以使用check/repair的功能。
2. myisamchk, isamchk
其中myisamchk适用于MYISAM类型的数据表,而isamchk适用于ISAM类型的数据表。这两条命令的主要参数相同,一般新的系统都使用MYISAM作为缺省的数据表类型,这里以myisamchk为例子进行说明。当发现某个数据表出现问题时可以使用:
myisamchk tablename.MYI
进行检测,如果需要修复的话,可以使用:
myisamchk -of tablename.MYI
关于myisamchk的详细参数说明,可以参见它的使用帮助。需要注意的时在进行修改时必须确保MySQL服务器没有访问这个数据表,保险的情况下是最好在进行检测时把MySQL服务器Shutdown掉。
-----------------------------
另外可以把下面的命令放在你的rc.local里面启动MySQL服务器前:
[ -x /tmp/mysql.sock ] /pathtochk/myisamchk -of /DATA_DIR/*/*.MYI
其中的/tmp/mysql.sock是MySQL监听的Sock文件位置,对于使用RPM安装的用户应该是/var/lib/mysql/mysql.sock,对于使用源码安装则是/tmp/mysql.sock可以根据自己的实际情况进行变更,而pathtochk则是myisamchk所在的位置,DATA_DIR是你的MySQL数据库存放的位置。
需要注意的时,如果你打算把这条命令放在你的rc.local里面,必须确认在执行这条指令时MySQL服务器必须没有启动!检测修复所有数据库(表)
jsp连接mysql数据库注册用户代码的问题
stat=conn.prepareStatement("insert wei values(?,?,?)");
stat.setString(1,reg_name);
stat.setString(2,reg_pass);
stat.setString(3,reg_pass1);
if(reg_pass1!=(reg_pass)){
out.println("scriptalert('密码不一致,请重新输入!');location.replace('zhuce.jsp')/script");
flag=false;
}
stat.executeUpdate();
这块代码把 if(reg_pass1!=(reg_pass))改成if(!reg_pass1.equals(reg_pass)),要解决为什么插入数据库的问题,在stat.executeUpdate();加个判断if(!flag){
stat.executeUpdate();
}