java登录模块伪代码 java编写登录界面代码

伪代码怎么写伪代码(Pseudocode)是一种非正式的java登录模块伪代码,类似于英语结构的java登录模块伪代码,用于描述模块结构图的语言 。
当考虑算法功能(而不是其语言实现)时,伪代码常常得到应用 。伪代码常被用于技术文档和科学出版物中来表示算法 , 也被用于在软件开发的实际编码过程之前表达程序的逻辑 。伪代码不是用户和分析师的工具 , 而是设计师和程序员的工具 。计算机科学在教学中通常使用虚拟码,以使得所有的程序员都能理解 。
简单地说,伪代码就是表达程序员开始编码前的想法 , 让人便于理解的代码 。是不依赖于语言,用来表示程序执行过程,而不一定能编译运行的代码 。伪代码提供java登录模块伪代码了更多的设计信息,每一个模块的描述都必须与设计结构图一起出现 。
使用伪代码的目的及伪代码的特点java登录模块伪代码:
使用伪代码的目的是使被描述的算法可以容易地以任何一种编程语言(Pascal,C,Java等)实现 。因此,伪代码必须结构清晰、代码简单、可读性好,并且类似自然语言 。
伪代码介于自然语言与编程语言之间,以编程语言的书写形式指明算法职能 。使用伪代码,不用拘泥于具体实现 。相比程序语言(例如Java, C,C, Dephi等等)它更类似自然语言 。它是半角式化、不标准的语言 。
请问这段JAVA的伪代码要怎么改才能运行?这段不是伪代码,就是代码 , 你不能跑是因为上面只贴了核心,一些辅助的部分没有贴吧 。
java登录模块验证出现问题求解答前期准备
首先要先明确有个大体的思路 , 要实现什么样的功能,了解完成整个模块要运用到哪些方面的知识,以及从做的过程中去发现自己的不足 。技术方面的进步大都都需要从实践中出来的 。
功能:用户注册功能 系统登录功能 生成验证码
知识:窗体设计、数据库设计、JavaBean封装属性、JDBC实现对数据库的连接、验证码(包括彩色验证码)生成技术,还有就些比如像使用正则表达式校验用户注册信息、随机获得字符串、对文本可用字符数的控制等
设计的模块预览图:
彩色验证码预览图:
所用数据库:MySQL
数据库设计
创建一个数据库db_database01,其中包含一个表格tb_user,用来保存用户的注册的数据 。
其中包含4个字段
id int(11)
username varchar(15)
password varchar(20)
email varchar(45)
MySQL语句可以这样设计:
create schema db_database01;
use db_database01;
create table tb_user(
id int(11) not null auto_increment primary key,
username varchar(15) not null,
password varchar(20) not null,
email varchar(45) not null
);
insert into tb_user values(1,"lixiyu","lixiyu",lixiyu419@gmail.com);
这样把lixiyu作为用户名 。
select语句检查一下所建立的表格:
编写JavaBean封装用户属性
package com.lixiyu.model;
public class User {
private int id;// 编号
private String username;// 用户名
private String password;// 密码
private String email;// 电子邮箱
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
编写JDBC工具类
将与数据库操作相关的代码放置在DBConfig接口和DBHelper类中
DBConfig接口用于保存数据库、用户名和密码信息
代码:
package com.lixiyu.util;
public interface DBConfig {
String databaseName = "db_database01";// 数据库名称
String username = "root";// 数据库用户名
String password = "lixiyu";// 数据库密码
}
为简化JDBC开发,DBHelper使用了了Commons DbUtil组合 。
DBHelper类继承了DBConfig接口,该类中包含4种方法:
(1)getConnection()方法:获得数据库连接,使用MySQL数据源来简化编程,避免因加载数据库驱动而发生异常 。
(2)exists()方法:判断输入的用户名是否存在 。
(3)check()方法:当用户输入用户名和密码,查询使用check()方法是否正确 。
(4)save()方法:用户输入合法注册信息后,,将信息进行保存 。
详细代码:
package com.lixiyu.util;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Arrays;
import java.util.List;
import org.apache.commons.dbutils.DbUtils;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.ResultSetHandler;
import org.apache.commons.dbutils.handlers.ColumnListHandler;
import org.apache.commons.dbutils.handlers.ScalarHandler;
import org.apache.commons.lang.StringEscapeUtils;
import com.lixiyu.model.User;
import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;
public class DBHelper implements DBConfig {
/*
* 使用MySQL数据源获得数据库连接对象
*
* @return:MySQL连接对象,如果获得失败返回null
*/
public static Connection getConnection() {
MysqlDataSource mds = new MysqlDataSource();// 创建MySQL数据源
mds.setDatabaseName(databaseName);// 设置数据库名称
mds.setUser(username);// 设置数据库用户名
mds.setPassword(password);// 设置数据库密码
try {
return mds.getConnection();// 获得连接
} catch (SQLException e) {
e.printStackTrace();
}
return null;// 如果获取失败就返回null
}
/*
* 判断指定用户名的用户是否存在
*
* @return:如果存在返回true,不存在或者查询失败返回false
*/
public static boolean exists(String username) {
QueryRunner runner = new QueryRunner();// 创建QueryRunner对象
String sql = "select id from tb_user where username = '"username"';";// 定义查询语句
Connection conn = getConnection();// 获得连接
ResultSetHandlerListObject rsh = new ColumnListHandler();// 创建结果集处理类
try {
ListObject result = runner.query(conn, sql, rsh);// 获得查询结果
if (result.size()0) {// 如果列表中存在数据
return true;// 返回true
} else {// 如果列表中没有数据
return false;// 返回false
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
DbUtils.closeQuietly(conn);// 关闭连接
}
return false;// 如果发生异常返回false
}
/*
* 验证用户名和密码是否正确 使用Commons Lang组件转义字符串避免SQL注入
*
* @return:如果正确返回true,错误返回false
*/
public static boolean check(String username, char[] password) {
username = StringEscapeUtils.escapeSql(username);// 将用户输入的用户名转义
QueryRunner runner = new QueryRunner();// 创建QueryRunner对象
String sql = "select password from tb_user where username = '"username"';";// 定义查询语句
Connection conn = getConnection();// 获得连接
ResultSetHandlerObject rsh = new ScalarHandler();// 创建结果集处理类
try {
String result = (String) runner.query(conn, sql, rsh);// 获得查询结果
char[] queryPassword = result.toCharArray();// 将查询到得密码转换成字符数组
if (Arrays.equals(password, queryPassword)) {// 如果密码相同则返回true
Arrays.fill(password, '0');// 清空传入的密码
Arrays.fill(queryPassword, '0');// 清空查询的密码
return true;
} else {// 如果密码不同则返回false
Arrays.fill(password, '0');// 清空传入的密码
Arrays.fill(queryPassword, '0');// 清空查询的密码
return false;
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
DbUtils.closeQuietly(conn);// 关闭连接
}
return false;// 如果发生异常返回false
}
/*
* 保存用户输入的注册信息
*
* @return:如果保存成功返回true , 保存失败返回false
*/
public static boolean save(User user) {
QueryRunner runner = new QueryRunner();// 创建QueryRunner对象
String sql = "insert into tb_user (username, password, email) values (?, ?, ?);";// 定义查询语句
Connection conn = getConnection();// 获得连接
Object[] params = { user.getUsername(), user.getPassword(), user.getEmail() };// 获得传递的参数
try {
int result = runner.update(conn, sql, params);// 保存用户
if (result0) {// 如果保存成功返回true
return true;
} else {// 如果保存失败返回false
return false;
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
DbUtils.closeQuietly(conn);// 关闭连接
}
return false;// 如果发生异常返回false
}
}
系统登录
1.1窗体设计
使用BoxLayout布局 , 将控件排列方式设置从上至下:
复制代码代码如下:
contentPane.setLayout(new BoxLayout(contentPane,BoxLayout.PAGE_AXIS));
窗体使用了标签、文本域、密码域和按钮等控件
实现代码:
public class login extends JFrame{
private static final long serialVersionUID = -4655235896173916415L;
private JPanel contentPane;
private JTextField usernameTextField;
private JPasswordField passwordField;
private JTextField validateTextField;
private String randomText;
public static void main(String args[]){
try {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
} catch (Throwable e) {
e.printStackTrace();
}
EventQueue.invokeLater(new Runnable(){
public void run(){
try{
login frame=new login();
frame.setVisible(true);
}catch(Exception e){
e.printStackTrace();
}
}
});
}
public login(){
setTitle("系统登录");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
contentPane=new JPanel();
setContentPane(contentPane);
contentPane.setLayout(new BoxLayout(contentPane,BoxLayout.PAGE_AXIS));
JPanel usernamePanel=new JPanel();
contentPane.add(usernamePanel);
JLabel usernameLable=new JLabel("用户名:");
usernameLable.setFont(new Font("微软雅黑", Font.PLAIN, 15));
usernamePanel.add(usernameLable);
usernameTextField=new JTextField();
usernameTextField.setFont(new Font("微软雅黑", Font.PLAIN, 15));
usernamePanel.add(usernameTextField);
usernameTextField.setColumns(10);
JPanel passwordPanel = new JPanel();
contentPane.add(passwordPanel);
JLabel passwordLabel = new JLabel("密 码:");
passwordLabel.setFont(new Font("微软雅黑", Font.PLAIN, 15));
passwordPanel.add(passwordLabel);
passwordField = new JPasswordField();
passwordField.setColumns(10);
passwordField.setFont(new Font("微软雅黑", Font.PLAIN, 15));
passwordPanel.add(passwordField);
JPanel validatePanel = new JPanel();
contentPane.add(validatePanel);
JLabel validateLabel = new JLabel("验证码:");
validateLabel.setFont(new Font("微软雅黑", Font.PLAIN, 15));
validatePanel.add(validateLabel);
validateTextField = new JTextField();
validateTextField.setFont(new Font("微软雅黑", Font.PLAIN, 15));
validatePanel.add(validateTextField);
validateTextField.setColumns(5);
randomText = RandomStringUtils.randomAlphanumeric(4);
CAPTCHALabel label = new CAPTCHALabel(randomText);//随机验证码
label.setFont(new Font("微软雅黑", Font.PLAIN, 15));
validatePanel.add(label);
JPanel buttonPanel=new JPanel();
contentPane.add(buttonPanel);
JButton submitButton=new JButton("登录");
submitButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
do_submitButton_actionPerformed(e);
}
});
submitButton.setFont(new Font("微软雅黑", Font.PLAIN, 15));
buttonPanel.add(submitButton);
JButton cancelButton=new JButton("退出");
cancelButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
do_cancelButton_actionPerformed(e);
}
});
cancelButton.setFont(new Font("微软雅黑",Font.PLAIN,15));
buttonPanel.add(cancelButton);
pack();// 自动调整窗体大小
setLocation(com.lixiyu.util.SwingUtil.centreContainer(getSize()));// 让窗体居中显示
}
窗体居中显示:
public class SwingUtil {
/*
* 根据容器的大小,计算居中显示时左上角坐标
*
* @return 容器左上角坐标
*/
public static Point centreContainer(Dimension size) {
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();// 获得屏幕大小
int x = (screenSize.width - size.width) / 2;// 计算左上角的x坐标
int y = (screenSize.height - size.height) / 2;// 计算左上角的y坐标
return new Point(x, y);// 返回左上角坐标
}
}
1.2获取及绘制验证码
public class CAPTCHALabel extends JLabel {
private static final long serialVersionUID = -963570191302793615L;
private String text;// 用于保存生成验证图片的字符串
public CAPTCHALabel(String text) {
this.text = text;
setPreferredSize(new Dimension(60, 36));// 设置标签的大小
}
@Override
public void paint(Graphics g) {
super.paint(g);// 调用父类的构造方法
g.setFont(new Font("微软雅黑", Font.PLAIN, 16));// 设置字体
g.drawString(text, 5, 25);// 绘制字符串
}
}
*彩色验证码:
public class ColorfulCAPTCHALabel extends JLabel {
private static final long serialVersionUID = -963570191302793615L;
private String text;// 用于保存生成验证图片的字符串
private Color[] colors = { Color.BLACK, Color.BLUE, Color.CYAN, Color.DARK_GRAY, Color.GRAY, Color.GREEN, Color.LIGHT_GRAY, Color.MAGENTA, Color.ORANGE,
Color.PINK, Color.RED, Color.WHITE, Color.YELLOW };// 定义画笔颜色数组
public ColorfulCAPTCHALabel(String text) {
this.text = text;
setPreferredSize(new Dimension(60, 36));// 设置标签的大小
}
@Override
public void paint(Graphics g) {
super.paint(g);// 调用父类的构造方法
g.setFont(new Font("微软雅黑", Font.PLAIN, 16));// 设置字体
for (int i = 0; itext.length(); i) {
g.setColor(colors[RandomUtils.nextInt(colors.length)]);
g.drawString(""text.charAt(i), 5i * 13, 25);// 绘制字符串
}
}
}
1
什么是伪代码,什么时候能用到它,有什么作用,如何去写 , 请大侠举例说明一下~伪代码(Pseudocode)是一种算法描述语言 。使用伪代码的目的是为了使被描述的算法可以容易地以任何一种编程语言(Pascal , C,Java,etc)实现 。因此,伪代码必须结构清晰、代码简单、可读性好,并且类似自然语言 。介于自然语言与编程语言之间 。
例如,类Pascal语言的伪代码的语法规则是: 在伪代码中,每一条指令占一行(else if,例外) 。指令后不跟任何符号(Pascal和C中语句要以分号结尾) 。书写上的“缩进”表示程序中的分支程序结构 。这种缩进风格也适用于if-then-else语句 。用缩进取代传统Pascal中的begin和end语句来表示程序的块结构可以大大提高代码的清晰性;同一模块的语句有相同的缩进量 , 次一级模块的语句相对与其父级模块的语句缩进 。
伪代码只是像流程图一样用在程序设计的初期 , 帮助写出程序流程 。简单的程序一般都不用写流程、写思路,但是复杂的代码,最好还是把流程写下来,总体上去考虑整个功能如何实现 。写完以后不仅可以用来作为以后测试,维护的基础,还可用来与他人交流 。但是,如果把全部的东西写下来必定可能会让费很多时间,那么这个时候可以采用伪代码方式 。比如:
IF 九点以前 THEN
do 私人事务;
ELSF 9点到18点 THEN
工作;
ELSE
下班;
END IF
这样不但可以达到文档的效果,同时可以节约时间. 更重要的是,使结构比较清晰,表达方式更加直观.
JAVA 伪代码提示输入一个大于2且11的数字
输入一整型数值给Vertices,
if(Vertices3 || Vertices 11){
提示重新输入且应输入
退出程序
}else{
生成一个Vertices* Vertices 大小的数组Graph ,
填充数组 :行号与列号相同填充0,其余填充10以内随机数
交换元素:以[i][j]位置的数值与[j][i]位置的数值互换
最后打印数组各元素
}
java代码转成伪代码1. 请把下面的java代码用伪代码写出来
伪代码(Pseudocode)是一种算法描述语言 。
使用伪代码的目的是为java登录模块伪代码了使被描述的算法可以容易地以任何一种编程语言(Pascal,C,Java,etc)实现 。因此java登录模块伪代码,伪代码必须结构清晰、代码简单、可读性好,并且类似自然语言 。
介于自然语言与编程语言之间 。以编程语言的书写形式指明算法职能 。
使用伪代码,不用拘泥于具体实现 。相比程序语言(例如Java, C,C, Dephi 等等)它更类似自然语言 。
它是半角式化、不标准的语言 。可以将整个算法运行过程的结构用接近自然语言的形式(可以使用任何一种java登录模块伪代码你熟悉的文字,关键是把程序的意思表达出来)描述出来 。
String path = "***"File f = new File(path);public void test (F f)File []fs = f遍历文件夹;for( 。){ if(fs[i]是文件){ 输入 }else{ 递归test(fs[i]); }} 。
2. JAVA 伪代码
提示输入一个大于2且11的数字
输入一整型数值给Vertices,
if(Vertices3 || Vertices 11){
提示重新输入且应输入
退出程序
}else{
生成一个Vertices * Vertices 大小的数组Graph,
填充数组 :行号与列号相同填充0,其余填充10以内随机数
交换元素:以[i][j]位置的数值与[j][i]位置的数值互换
最后打印数组各元素
}
3. 请把下列用java代码 用伪代码写出来
伪代码(Pseudocode)是一种算法描述语言 。使用伪代码的目的是为了使被描述的算法可以容易地以任何一种编程语言(Pascal,C,Java,etc)实现 。因此,伪代码必须结构清晰、代码简单、可读性好,并且类似自然语言 。介于自然语言与编程语言之间 。以编程语言的书写形式指明算法职能 。使用伪代码,不用拘泥于具体实现 。相比程序语言(例如Java, C,C, Dephi 等等)它更类似自然语言 。它是半角式化、不标准的语言 。可以将整个算法运行过程的结构用接近自然语言的形式(可以使用任何一种你熟悉的文字,关键是把程序的意思表达出来)描述出来 。
String path = "***"
File f = new File(path);
public void test (F f)
File []fs = f遍历文件夹;
for( 。){
if(fs[i]是文件){
输入
}else{
递归test(fs[i]);
}
}
4. 伪代码怎么写
伪代码(Pseudocode)是一种算法描述语言 。
使用伪代码的目的是为了使被描述的算法可以容易地以任何一种编程语言(Pascal,C,Java,etc)实现 。因此,伪代码必须结构清晰、代码简单、可读性好,并且类似自然语言 。
介于自然语言与编程语言之间 。它以编程语言的书写形式指明算法的职能 。
相比于程序语言(例如Java, C,C, Dephi 等等)它更类似自然语言 。它是半角式化、不标准的语言 。
我们可以将整个算法运行过程的结构用接近自然语言的形式(这里,你可以使用任何一种你熟悉的文字 , 中文,英文 等等,关键是你把你程序的意思表达出来)描述出来. 使用伪代码,可以帮助我们更好的表述算法,不用拘泥于具体的实现. 人们在用不同的编程语言实现同一个算法时意识到,java登录模块伪代码他们的实现(注意:这里是实现,不是功能)很不同 。尤其是对于那些熟练于不同编程语言的程序员要理解一个(用其他编程语言编写的程序的)功能时可能很难,因为程序语言的形式限制了程序员对程序关键部分的理解 。
这样伪代码就应运而生了 。当考虑算法功能(而不是其语言实现)时,伪代码常常得到应用 。
计算机科学在教学中通常使用虚拟码,以使得所有的程序员都能理解 。综上,简单的说,让人便于理解的代码 。
不依赖于语言的,用来表示程序执行过程,而不一定能编译运行的代码 。在数据结构讲算法的时候用的很多 。
5. 伪代码的写法
类Pascal语言的伪代码的语法规则是: 在伪代码中 , 每一条指令占一行(else if,例外) 。指令后不跟任何符号(Pascal和C中语句要以分号结尾) 。
伪代码实例如下:
IF 九点以前 THEN
do 私人事务;
ELSE 9点到18点 THEN
工作;
ELSE
下班;
END IF
这样不但可以达到文档的效果 , 同时可以节约时间 。更重要的是,使结构比较清晰 , 表达方式更加直观 。
伪代码(Pseudocode)是一种算法描述语言 。使用伪代码的目的是为了使被描述的算法可以容易地以任何一种编程语言(Pascal,C,Java,etc)实现 。因此,伪代码必须结构清晰、代码简单、可读性好,并且类似自然语言 。介于自然语言与编程语言之间 。
它以编程语言的书写形式指明算法的职能 。相比于程序语言(例如Java, C,C, Dephi 等等)它更类似自然语言 。它是半角式化、不标准的语言 。
我们可以将整个算法运行过程的结构用接近自然语言的形式(这里,你可以使用任何一种你熟悉的文字,中文,英文 等等 , 关键是你把你程序的意思表达出来)描述出来 。使用伪代码,可以帮助我们更好的表述算法,不用拘泥于具体的实现 。
6. 伪代码的写法
最低0.27元开通文库会员,查看完整内容 原发布者:wangwenjxnu 伪代码伪代码是用介于自然语言和计算机语言之间的文字和符号来描述算法 。
每一行(或几行)表示一个基本操作 。它不用图形符号,因此书写方便、格式紧凑 , 也比较好懂,便于向程序过渡 。
伪代码的7个主要部分:(1)算法名称(2)指令序列(3)输入/输出(4)分支选择(5)赋值(6)循环(7)算法结束1.算法名称两种表示算法的伪代码:过程(Procedure)函数(Function)过程和函数的区别是:过程是执行一系列的操作,不需要返回操作的结果,无返回数据;函数是执行一系列的操作后,要将操作的结果返回,有返回数据 。算法伪代码的书写规则:Procedure([])Function([])如:ProcedureHanoi_Tower()FunctionFac(x)表示名为Fac的一个函数 。
FunctionProg(n)表示名为Prog的一个函数 。2.指令序列指令序列是算法的主体 。
指令序列的书写规则:用Begin作为开始、用End作为结束;用“{”作为开始、用“/}”作为结束 。例如:Begin指令序列;End或者:{指令序列;/}3.输出/输出输入:Input输出:Output或Return4.分支选择两种分支:IfThen{指令序列/}IfThen{ 。
【java登录模块伪代码 java编写登录界面代码】关于java登录模块伪代码和java编写登录界面代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读