❶ Logic java是什么
是struts的一个标签..
❷ logic java 中写用户名登录验证怎么编写
可以告诉你思路.
把用户名和密码传到后台,用sql语句根据用户名和密码拼接查询语句,如果查询出有记录,说明用户名和密码正确,如果查询结果是空,说明用户名或密码错误.
❸ java logic怎么做用户登录
,具体点可以这样:创建一个用户表,里边包括LoginName(登录名),UserName(用户名),Password(密码),Age(年龄),Address(地址)。然后编写Java程序(用MVC架构)模型层(M):DBConnection.java(负责连接数据库)
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.*;
public class DBConnection {
private static final String DRIVER_CLASS = "sun.jdbc.odbc.JdbcOdbcDriver";
private static final String DB_URL = "jdbc:odbc:text";
public DBConnection() {
}
public static Connection getConnection() {
Connection conn = null;
try {
Class.forName(DRIVER_CLASS);
conn = DriverManager.getConnection(DB_URL);
} catch (SQLException ex) {
System.out.println(ex.getMessage());
} catch (ClassNotFoundException ex) {
System.out.println(ex.getMessage());
}
return conn;
}
}
第2个负责数据库查询操作的类:DBUserManager.java
import e.systop.text.model.entity.User;
import e.systop.text.model..DBConnection;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.DriverManager;
import java.sql.*;
public class DBUserManager {
private static final String SQL_SELECT =
"SELECT LoginName,UserName,PassWord,Age,Address FROM UserInfo WHERE LoginName = ? AND PassWord = ?";
public DBUserManager() {
}
public boolean checkDB(User u) {
boolean b = false;
Connection conn = null;
PreparedStatement psmt = null;
ResultSet rs = null;
conn = DBConnection.getConnection();
try {
psmt = conn.prepareStatement(SQL_SELECT);
psmt.setString(1, u.getLoginName());
psmt.setString(2, u.getPassWord());
rs = psmt.executeQuery();
b = rs.next();
if (rs.next()) {
b = true;
}
} catch (SQLException ex) {
System.out.println(ex.getMessage());
} finally {
cleanDB(rs, psmt, conn);
}
return b;
}
public User checkBC(User u) {
Connection conn = null;
PreparedStatement psmt = null;
ResultSet rs = null;
User tmp = new User();
conn = DBConnection.getConnection();
try {
psmt = conn.prepareStatement(SQL_SELECT);
psmt.setString(1, u.getLoginName());
psmt.setString(2, u.getPassWord());
rs = psmt.executeQuery();
if (rs.next()) {
tmp.setLoginName(rs.getString(1));
tmp.setUserName(rs.getString(2));
tmp.setAge(rs.getInt(4));
tmp.setAddress(rs.getString(5));
}
} catch (SQLException ex) {
System.out.println(ex.getMessage());
} finally {
cleanDB(rs, psmt, conn);
}
return tmp;
}
public void cleanDB(ResultSet rs, PreparedStatement psmt, Connection conn) {
try {
if (rs != null) {
rs.close();
}
if (psmt != null) {
psmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException ex) {
System.out.println(ex.getMessage());
}
}
第3个实体用户类:User.java
package e.systop.text.model.entity;
public class User {
private String loginName;
private String userName;
private String passWord;
private int age;
private String address;
public User() {
}
public void setLoginName(String loginName) {
this.loginName = loginName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public void setPassWord(String passWord) {
this.passWord = passWord;
}
public void setAge(int age) {
this.age = age;
}
public void setAddress(String address) {
this.address = address;
}
public String getLoginName() {
return loginName;
}
public String getUserName() {
return userName;
}
public String getPassWord() {
return passWord;
}
public int getAge() {
return age;
}
public String getAddress() {
return address;
}
}
然后编写控制层(C):GetInfoServlet.java
package e.systop.text.control;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import e.systop.text.model.entity.User;
import e.systop.text.model.service.UserManager;
public class GetInfoServlet extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=GBK";
//Initialize global variables
public void init() throws ServletException {
}
//Process the HTTP Get request
public void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
}
//Process the HTTP Post request
public void doPost(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
String loginName = request.getParameter("loginName");
String passWord = request.getParameter("passWord");
User u = new User();
u.setLoginName(loginName);
u.setPassWord(passWord);
UserManager m = new UserManager();
RequestDispatcher d;
if (m.checkUser(u)) {
User o = m.checkBC(u);
request.setAttribute("JavaBEAN",o);
d = request.getRequestDispatcher("GetInfoUser.jsp");
} else {
d = request.getRequestDispatcher("GetInfoFinale.jsp");
}
d.forward(request, response);
}
//Clean up resources
public void destroy() {
}
}
最后,创建表示层(V):包括3个Jsp(登录页面GetInfo.jsp、登录成功页面GetInfoUser.jsp、登录失败页面GetInfoFinale.jsp)
上面的就是Jsp结合Servlet用MVC架构写的用户登录程序。
❹ Java的三层架构都有些什么
三层架构是一个分层式的软件体系架构设计,它可适用于任何一个项目。MVC是一个设计模式,它是根据项目的具体需求来决定是否适用于该项目。
那么架构跟设计模式有什么区别呢?我们从接手一个项目开始,首先,我们需要进行架构设计,一般我们采用的就是分层式的架构设计,即我们的三层架构。
然后,在确定了架构以后,我们再根据项目的具体需求去考虑是否需要应用一些设计模式,比如是否应用我们的MVC模式,抽象工厂模式等等。(在这里我们看出,MVC与三层架构不是一个等级的,而与抽象工厂等设计模式才是一路的)
最后,确定了模式以后,就是我们的一些具体的实现了。(当然一个项目不仅仅考虑这些问题,我只是为了说明两者的区别,将其他问题已省略)
其次,它俩划分的层次不同。
三层架构将整个项目划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。MVC即Model(模型),View(视图),Controller(控制)。
❺ Java 中 三层里面Form包。Logic包。Action包各自作用
MVC
View-form包:为展现层,和页面相关,一般和用户打交道。
Model-logic包:业务逻辑层,处理数据,一般和数据库打交道。
Controller-action:控制层,控制数据从模型到界面,或从界面到模型,把展现层和业务层联系起来。
❻ javastructs框架中如何对logic遍历出来的数据进行删除、更新操作
第一,更新批量实现有难度,除非使用EXT或者Jquery的控件。
第二、批量删除简单,下面是批量删除的代码
<logic:iterate id="tube" name="page1" property="tubeList">
<tr>
<td><input type="checkbox" name="item" value='<bean:write name="tube" property="id"/>'></td>
<td><bean:write name="tube" property="tubeDrawing" /></td>
<td><bean:write name="tube" property="tubeName" /></td>
<td><bean:write name="tube" property="tubeNum" /></td>
<td><bean:write name="tube" property="tubeSpecification" /></td>
<td><bean:write name="tube" property="tubeMaterialType" /></td>
<td><bean:write name="tube" property="locoType" /></td>
<td><bean:write name="tube" property="bendRadius" /></td>
<td><bean:write name="tube" property="straightSectionNum" /></td>
<td><bean:write name="tube" property="benderNum" /></td>
<td><bean:write name="tube" property="dieNum" /></td>
<td><input type="button" name="Submit442" value="更新" onClick="updatealert()">
<input type="button" name="Submit4434" value="删除" onClick="deleteConfirm('item','后台删除方法的url')">
</td>
</tr>
</logic:iterate>
附带js
//删除
function deleteConfirm(idItem,url){
var idItems = document.getElementsByName(idItem);
var selectedNum = 0;
var selectedItemValue="";
if(idItems && url!=""){
//alert(idItems.length);
for(var i=0;i<idItems.length;i++){
if(idItems[i].checked){
selectedNum = selectedNum+1;
selectedItemValue += idItems[i].value+",";
//alert(selectedItemValue);
}
}
}
selectedItemValue = selectedItemValue.substring(0,selectedItemValue.length-1);
if(selectedNum < 1){
alert("请选择要进行操作的记录!!!");
return;
}else if(confirm('您真要删除记录吗?')){
window.location.href=url+"&item="+selectedItemValue;
}
}
❼ java开源的框架
Spring Framework 【Java开源 J2EE框架】
Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。 Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。 Spring提供了唯一的数据访问抽象,包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理和其他企业事务--如果你需要--还能实现你自己的aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。Spring还提供了可以和IoC容器集成的强大而灵活的MVC Web框架。【SpringIDE:Eclipse平台下一个辅助开发插件】.
WebWork 【Java开源 Web框架】
WebWork是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EEWeb框架。WebWork目前最新版本是2.1,现在的WebWork2.x前身是Rickard Oberg开发的WebWork,但现在WebWork已经被拆分成了Xwork1和WebWork2两个项目。 Xwork简洁、灵活功能强大,它是一个标准的Command模式实现,并且完全从web层脱离出来。 Xwork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性验证,类型转换,强大的表达式语言(OGNL – the Object Graph Notation Language),IoC(Inversion of Control倒置控制)容器等。 WebWork2建立在Xwork之上,处理HTTP的响应和请求。WebWork2使用ServletDispatcher将HTTP请求的变成Action(业务层Action类), session(会话)application(应用程序)范围的映射,request请求参数映射。WebWork2支持多视图表示,视图部分可以使用JSP, Velocity, FreeMarker, JasperReports,XML等。在WebWork2.2中添加了对AJAX的支持,这支持是构建在DWR与Dojo这两个框架的基础之上.【EclipseWork:用于WebWork辅助开发的一个Eclipse插件】
Apusic JSF 【Java开源 Web框架】
Apusic JSF-基于Ajax技术的JSF开源引擎。通过Apusic JSF的Ajax特性,我们能够只把发生变化的数据打包成Ajax请求发送给服务器端,而服务器端也只会将发生变化的数据打包成Ajax应答,从而大大提升系统的运行效率。并且,传统的JSF请求应答将刷新整个页面,而Apusic JSF将只更新发生变化的客户端组件,从而给客户带来更好的人机体验......
Struts 【Java开源 Web框架】
Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。【StrutsIDE:用于Struts辅助开发的一个Eclipse插件】
Strecks 【Java开源 Web框架】
针对Java 5.0开发人员设计,扩展自Struts的一个Web框架。它的特点包括:POJO action,注释式校验,数据绑定和转换,依赖注入,拦截器等。
jxyz 【Java开源 Web框架】
pojo的mvc框架,使用java注解,使用ognl传输上下文,使用hivemind做ioc容器,使用spring简化hibernate操作,使用泛型来减少重复代码。 有以下几个特点。
1.Pojo。任何一个java类都可以做Action(logic),为了改造现在常用的ssh,tsh,wsh框架成sh,支持spring bean做Action(logic)
2.0配置,根据命名规范来查找Action类和view
3.和web环境松耦合,从理论上讲可以用在swing里
4.支持tdd开发,框架本身就是以tdd开发方式开发
5.代码少,一般mvc需要5个类,xyz只要3个,还可以通过GenericDAO,GenericLogic来减少重复代码
6.对开发者来说,一切实现都可以自己定制,由于hivemind支持迭代开
Hibernate 【Java开源 持久层框架】
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Eclipse平台下的Hibernate辅助开发工具:【Hibernate Synchronizer】【MiddlegenIDE】
IBATIS 【Java开源 持久层框架】
使用ibatis 提供的ORM机制,对业务逻辑实现人员而言,面对的是纯粹的Java对象, 这一层与通过Hibernate 实现ORM 而言基本一致,而对于具体的数据操作,Hibernate 会自动生成SQL 语句,而ibatis 则要求开发者编写具体的SQL 语句。相对Hibernate等 “全自动”ORM机制而言,ibatis 以SQL开发的工作量和数据库移植性上的让步,为系统 设计提供了更大的自由空间。作为“全自动”ORM 实现的一种有益补充,ibatis 的出现显 得别具意义。
EasyJWeb 【Java开源 Web框架】
EasyJWeb是基于java技术,应用于WEB应用程序快速开发的MVC框架,框架设计构思来源于国内众多项目实践,框架充分借签了当前主要流行的开源Web框架(Struts、JSF、Tapestry 、Webwork),吸取了其优点及精华,利用Velocity作为模板页面引擎,是一个实现了页面及代码完全分离的MVC开发框架。是一个能实现中小型Web应用系统快速开发的简易Web框架。
Tapestry 【Java开源 Web框架】
Tapestry是一个开源的基于servlet的应用程序框架,它使用组件对象模型来创建动态的,交互的web应用。一个组件就是任意一个带有jwcid属性的html标记。其中jwc的意思是Java Web Component。Tapestry使得java代码与html完全分离,利用这个框架开发大型应用变得轻而易举。并且开发的应用很容易维护和升级。Tapestry支持本地化,其错误报告也很详细。Tapestry主要利用javabean和xml技术进行开发。【Spindle:Tapestry辅助开发Eclipse插件】.
Turbine 【Java开源 Web框架】
Turbine是基于Servlet的框架包,也是开放源代码Jakarta项目。目前还没有关于Turbine的大量文档。它类似于Struts,但是有一些主要区别。突出的一点就是它并没有与JSP耦合。Turbine的特点是它提供了大量可重用的组件。此框架包中包含了大量组件,但是这些组件是离散的。它似乎应该给出更多的组件库,但是由于它缺少文档,所以很难掌握完整的体系结构。
Nuxeo5 【Java开源 J2EE框架】
Nuxeo5是一个用于ECM(Enterprise Content Management)应用程序开发的开源框架。基于组件和面向服务的架构使得它真正易于定制和扩展。Nuxeo5构建流行的Java5与Java EE5技术包括:Apache Jackrabbit ,JBoss应用服务器,JBoss Seam,jBPM,JBoss Rules,JSF,EJB3等,并运用OSGi与Nuxeo Core。
Jt 【Java开源 J2EE框架】
Jt是一个轻量级的,面向设计模式的J2EE框架。Jt已经被运用到一些大型的关键业务系统(mission critical system)。Jt实现了许多着名设计模式包括DAO(Data Access Object),GoF中的设计模式和J2EE模式。该框架支持的一些J2EE技术包括JSP,JDBC,EJB,JavaMail,XML和Web Services。
Open-jACOB eMail 【Java开源 WebMail】
Open-jACOB eMail是一个轻量级IMAP客户端,基于Javamail API与Open-jACOB框架开发。界面类似于Gmail,它提供的功能包括完整的folder list,message list和contact list。
Open-jACOB 【Java开源 Web框架】
Open-jACOB是一个Web框架用于开发基于AJAX,数据库驱动,跨浏览器的Web应用程序。该框架设计成一个基于Eclipse的插件,可以利用该插件设计数据库,设计UI,部署/测试应用程序等。具体用法可查看其提供的一个Flash Demo。
Ruby on Spring 【Java开源 Web框架】
Ruby on Spring是一个采用Ruby on Rails的思想与优点,集成JRuby动态语言与Spring框架而开发的开源项目。基于MIT license发布。
Ebean 【Java开源 持久层框架】
Ebean是一个对象/关系映射持久层框架。它与EJB3相类似,但该框架简单易于学习和使用。它特点: 1.兼容EJB3 ORM映射。2.支持级联保存和删除。3.支持懒加载。4.事务管理和日记功能。5.Statement Batching 5.支持缓存。6.Clustering。7.集成Lucene文本搜索。
❽ 想自己做一个手机游戏试试,流程是什么,都需要学些什么
你好 做手机游戏 我分开说好了
首先做手机应用(手机游戏其实也是应用的一种) 首选 肯定是 安卓 或者 ios 二选一
安卓 肯定就是java了 (我比较了解 干这个的) 后一种我就不熟了
那么 这个方向的技能 需要 javaLogic 也就是java的基本逻辑 然后是 web应用 也就是服务器技术 jsp 、servlet 前端的话 页面 要学习 js jquery html也就是div+css
再从游戏来说 游戏那么多精美的图片 想要绚丽的效果 肯定少不了的 那么就是 flash 图片处理之类的技术了
如果你只是想练手 做个小游戏 例如 贪食蛇 俄罗斯方块 扫雷 坦克大战之类的 那么入手的方向是
先搞懂游戏的算法 简单来说 如何判断蛇吃到了食物 如何让蛇前进后退 俄罗斯方块 : 如何这一层满了就消除 如何变幻方块模型 扫雷: 如何查找周围有几颗雷 这些都是游戏的算法 搞懂了这些逻辑算法 就好做了
希望能帮到你 谢谢