首页 > 编程知识 正文

jspmysql注册代码(jsp登录注册完整代码)

时间:2023-12-23 11:38:06 阅读:319266 作者:ASVJ

本文目录一览:

关于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();

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。