MVC模式实现登录以及增删改查之登录
我在这里用的不是maven项目,用的一般的web项目,所以需要用到的架包需要自己去下载添加,在项目中,一定注意环境的配置,我用的是jre1.7
1 新建项目
2 建立好MVC的管理包,导入对应的架包servlet
3 建立好与数据库对应的实体类 teacher.java
public class Teacher { private int tid; private String tname; private String tpsw; public int getTid() { return tid; } public void setTid(int tid) { this.tid = tid; } public String getTname() { return tname; } public void setTname(String tname) { this.tname = tname; } public String getTpsw() { return tpsw; } public void setTpsw(String tpsw) { this.tpsw = tpsw; } public Teacher(String tname, String tpsw) { super(); this.tname = tname; this.tpsw = tpsw; } public Teacher(int tid, String tname, String tpsw) { super(); this.tid = tid; this.tname = tname; this.tpsw = tpsw; } public Teacher() { super(); } }
4 在WebContent新建login.jsp文件编写登陆框
1
2
5 配置web.xml文件对应表单请求login
web.xml文件
注意:配置时
<!-- 提交登录请求 --> <servlet> <servlet-name>login</servlet-name> <servlet-class>com.zr.controller.LoginController</servlet-class> </servlet> <servlet-mapping> <servlet-name>login</servlet-name> <url-pattern>/login</url-pattern> </servlet-mapping>
6 编写对应的请求实体类LoginController.java:继承HttpServlet重写doget(),dopost()方法,根据method请求的不同调用doget或者dopost方法
LoginController.java
import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import com.zr.model.Teacher; import com.zr.service.valiDateService; import com.zr.serviceIm.valiDateServiceImpl; public class LoginController extends HttpServlet{ protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { super.doPost(req, resp); } protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //获取前台form表单的input输入框 String tname=req.getParameter("tname"); String tpsw=req.getParameter("tpsw"); Teacher tc=new Teacher(); tc.setTname(tname); tc.setTpsw(tpsw); valiDateService vds=new valiDateServiceImpl(); Teacher t= vds.valiDateTeacher(tc); HttpSession session=req.getSession(); session.setAttribute("teacher", t); if (t!=null) { //返回的不是空值,重定向到登录成功界面 req.getRequestDispatcher("main.jsp").forward(req, resp); } else { //返回空值,请求转发到登录界面 resp.sendRedirect("login.jsp"); } } }
7 从后台dao层写到control层
public interface TeacherDao { /** * 验证老师是否存在 * @param tc * @return */ public Teacher validateTeacher(Teacher tc); }
8.1 编写封装类建立与数据库的连接JDBCUtil.java
package JDBCUtil; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; public class JDBCUtil { //1.数据库地址 (根据不同的数据标准是不一样) private final static String DBURL = "jdbc:mysql://localhost:3306/student_crm?useUnicode=true&characterEncoding=UTF8"; //2.设置用户和密码 private final static String USERNAME = "root"; private final static String PASSWORD = "root"; //3.设置驱动名称 (根据不同的数据标准是不一样) private final static String DBDRIVER = "com.mysql.jdbc.Driver"; /** * 获取数据库连接 * @return 返回数据库连接 */ public static Connection getConnection(){ Connection con = null; try { Class.forName(DBDRIVER); con = DriverManager.getConnection(DBURL, USERNAME, PASSWORD); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return con; } //关闭连接 public static void closeJDBC(Statement st,Connection con) throws SQLException{ if(st!=null){ st.close(); } if(con!=null){ con.close(); } } }
8.2 dao层的实现
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import com.zr.dao.TeacherDao; import com.zr.model.Teacher; import JDBCUtil.JDBCUtil; public class TeacherDaoImpl implements TeacherDao{ /** * 输入老师的对象,返回老师对象 * @param args */ public Teacher validateTeacher(Teacher tc) { Teacher teacher=new Teacher(); //sql语句 StringBuffer sql=new StringBuffer("select * from teacher where tname=? and tpsw=?"); //获取数据库连接 Connection con=JDBCUtil.getConnection(); try { PreparedStatement pst=con.prepareStatement(sql.toString()); pst.setString(1, tc.getTname()); pst.setString(2, tc.getTpsw()); //返回一个结果集 ResultSet rs=pst.executeQuery(); if (rs.next()) { //把结果集里面的数据放入对应的teacher对象 teacher=new Teacher(rs.getInt("tid"),rs.getString("tname"),rs.getString("tpsw")); } } catch (SQLException e) { e.printStackTrace(); } return teacher; } }
9 Service层
public interface valiDateService { /** * @param tc * @return 老师对象 * 根据用户输入值验证老师是否存在 */ public Teacher valiDateTeacher(Teacher tc); }
10 Service层实现ServiceImpl.java
import com.zr.dao.TeacherDao; import com.zr.daoIm.TeacherDaoImpl; import com.zr.model.Teacher; import com.zr.service.valiDateService; public class valiDateServiceImpl implements valiDateService{ public Teacher valiDateTeacher(Teacher tc) { //父类的引用指向子类的对象,父类可以直接调用子类的方法 TeacherDao teacherDao=new TeacherDaoImpl(); //调用dao层的方法验证存在 Teacher teacher=teacherDao.validateTeacher(tc); return teacher; } }
11 com.zr.controller层
import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import com.zr.model.Teacher; import com.zr.service.valiDateService; import com.zr.serviceIm.valiDateServiceImpl; public class LoginController extends HttpServlet { protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { super.doPost(req, resp); } protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // 获取前台form表单的input输入框 String tname = req.getParameter("tname"); String tpsw = req.getParameter("tpsw"); // 将前台对象放入tc对象,作为输入参数 Teacher tc = new Teacher(); tc.setTname(tname); tc.setTpsw(tpsw); // 调用Service层的方法传入tc对象,并用t接收返回结果 valiDateService vds = new valiDateServiceImpl(); Teacher t = vds.valiDateTeacher(tc); // 获取JSP作用域session,将老师t对象放入session HttpSession session = req.getSession(); int a = t.getTid();//最好根据返回的老师的id进行判断 if (a != 0) { // 返回的有id,重定向到登录成功界面 req.getRequestDispatcher("main.jsp").forward(req, resp); session.setAttribute("teacher", t); } else { // 返回空值,请求转发到登录界面 req.getRequestDispatcher("login.jsp").forward(req, resp); } } }

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Introduction Dans le monde numérique en évolution rapide d'aujourd'hui, il est crucial de créer des applications WEB robustes, flexibles et maintenables. L'architecture PHPmvc fournit une solution idéale pour atteindre cet objectif. MVC (Model-View-Controller) est un modèle de conception largement utilisé qui sépare les différents aspects d'une application en composants indépendants. Les fondements de l'architecture MVC Le principe fondamental de l'architecture MVC est la séparation des préoccupations : Modèle : encapsule les données et la logique métier de l'application. Vue : responsable de la présentation des données et de la gestion des interactions des utilisateurs. Contrôleur : coordonne l'interaction entre les modèles et les vues, gère les demandes des utilisateurs et la logique métier. Architecture PHPMVC L'architecture phpMVC suit le modèle MVC traditionnel mais introduit également des fonctionnalités spécifiques au langage. Ce qui suit est PHPMVC

L'architecture MVC (Model-View-Controller) est l'un des modèles les plus populaires dans le développement PHP car elle fournit une structure claire pour organiser le code et simplifier le développement d'applications WEB. Bien que les principes de base de MVC soient suffisants pour la plupart des applications Web, ils présentent certaines limites pour les applications qui doivent gérer des données complexes ou implémenter des fonctionnalités avancées. Séparation de la couche modèle La séparation de la couche modèle est une technique courante dans l'architecture MVC avancée. Cela implique de diviser une classe de modèle en sous-classes plus petites, chacune se concentrant sur une fonctionnalité spécifique. Par exemple, pour une application de commerce électronique, vous pouvez diviser la classe de modèle principale en un modèle de commande, un modèle de produit et un modèle client. Cette séparation contribue à améliorer la maintenabilité et la réutilisation du code. Utiliser l'injection de dépendances

Le framework SpringMVC décrypté : Pourquoi est-il si populaire, des exemples de code spécifiques sont nécessaires Introduction : Dans le domaine actuel du développement logiciel, le framework SpringMVC est devenu un choix très populaire parmi les développeurs. Il s'agit d'un framework Web basé sur le modèle d'architecture MVC, offrant une méthode de développement flexible, légère et efficace. Cet article approfondira le charme du framework SpringMVC et démontrera sa puissance à travers des exemples de code spécifiques. 1. Avantages de SpringMVC Framework Méthode de configuration flexible Spr

Le modèle MVC (Model-View-Controller) est un modèle de conception logicielle couramment utilisé qui peut aider les développeurs à mieux organiser et gérer le code. Le modèle MVC divise l'application en trois parties : Modèle, Vue et Contrôleur, chaque partie a son propre rôle et ses propres responsabilités. Dans cet article, nous verrons comment implémenter le modèle MVC à l'aide de PHP. Modèle Un modèle représente les données et le traitement des données d'une application. en général,

Dans le développement Web, MVC (Model-View-Controller) est un modèle architectural couramment utilisé pour traiter et gérer les données, l'interface utilisateur et la logique de contrôle d'une application. En tant que langage de développement Web populaire, PHP peut également utiliser l'architecture MVC pour concevoir et créer des applications Web. Cet article présentera comment utiliser l'architecture MVC pour concevoir des projets en PHP, et expliquera ses avantages et ses précautions. Qu'est-ce que MVCMVC est un modèle d'architecture logicielle couramment utilisé dans les applications Web. VM

Développement de MVC avec le framework PHP8 : concepts et techniques importants que les débutants doivent connaître Introduction : Avec le développement rapide d'Internet, le développement Web joue un rôle important dans l'industrie actuelle du développement de logiciels. PHP est largement utilisé pour le développement Web et il existe de nombreux frameworks matures qui aident les développeurs à créer des applications plus efficacement. Parmi eux, l’architecture MVC (Model-View-Controller) est l’un des modèles les plus courants et les plus utilisés. Cet article présentera comment les débutants peuvent utiliser le framework PHP8 pour développer des applications MVC.

Comment implémenter une architecture MVC évolutive dans le framework PHP8 Introduction : Avec le développement rapide d'Internet, de plus en plus de sites Web et d'applications adoptent le modèle d'architecture MVC (Model-View-Controller). L'objectif principal de l'architecture MVC est de séparer les différentes parties de l'application afin d'améliorer la maintenabilité et l'évolutivité du code. Dans cet article, nous présenterons comment implémenter une architecture MVC évolutive dans le framework PHP8. 1. Comprendre le modèle d'architecture MVC Le modèle d'architecture MVC est une conception logicielle.

Développement de MVC avec le framework PHP8 : un guide étape par étape Introduction : MVC (Model-View-Controller) est un modèle d'architecture logicielle couramment utilisé pour séparer la logique, les données et l'interface utilisateur d'une application. Il fournit une structure qui sépare l'application en trois composants distincts pour une meilleure gestion et maintenance du code. Dans cet article, nous explorerons comment utiliser le framework PHP8 pour développer une application conforme au modèle MVC. Première étape : comprendre le modèle MVC Avant de commencer à développer une application MVC, je
