登录
首页 » Java » Java 提高产品质量的方法(基础篇-实例101).zip

Java 提高产品质量的方法(基础篇-实例101).zip

于 2019-10-02 发布
0 235
下载积分: 1 下载次数: 0

代码说明:

实例中如用到数据库,请到这里下载 https://www.haolizi.net/example/view_30457.html

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • Java Applet绘制椭圆(提高篇-实例571).zip
    Java Applet绘制椭圆(提高篇-实例571).zip
    2019-10-03下载
    积分:1
  • 于SringBoot微服务开发的电商平台示例
     前后端分离的企业级微服务架构 * 基于`Spring Boot 2.0.X`、`Spring Cloud Finchley`和`Spring Cloud Alibaba` * 深度定制`Spring Security`真正实现了基于`RBAC`、`jwt`和`oauth2`的无状态统一权限认证的解决方案 * 提供应用管理,方便第三方系统接入 * 引入组件化的思想实现高内聚低耦合,项目代码简洁注释丰富上手容易 * 注重代码规范,严格控制包依赖,每个工程基本都是最小依赖 * 非常适合学习和企业中使用 > 业务逻辑来源:单体版本 [https://gitee.com/zscat/mallplus](https://gitee.com/zscat/mallplus) ## 2. 项目总体架构图 ![](http://processon.com/chart_image/5c7f2ad6e4b02b2ce48d6835.png?_=1554621571250) ## 3. 功能介绍 * **统一认证功能**   * 支持oauth2的四种模式登录   * 支持用户名、密码加图形验证码登录   * 支持手机号加密码登录   * 支持openId登录   * 支持第三方系统单点登录 * **分布式系统基础支撑**   * 服务注册发现、路由与负载均衡   * 服务降级与熔断   * 服务限流(url/方法级别)   * 统一配置中心   * 统一日志中心   * 统一分布式缓存操作类、cacheManager配置扩展   * 分布式锁   * 分布式任务调度器   * 支持CI/CD持续集成(包括前端和后端)   * 分布式高性能Id生成器   * 分布式事务 * **系统监控功能**   * 服务调用链监控   * 应用拓扑图   * 慢服务检测   * 服务Metric监控   * 应用监控(应用健康、JVM、内存、线程)   * 错误日志查询   * 慢查询SQL监控   * 应用吞吐量监控(qps、rt)   * 服务降级、熔断监控   * 服务限流监控   * 分库分表、读写分离 * **业务基础功能支撑**   * 高性能方法级幂等性支持   * RBAC权限管理,实现细粒度控制(方法、url级别)   * 快速实现导入、导出功能   * 数据库访问层自动实现crud操作   * 代码生成器   * 基于Hutool的各种便利开发工具   * 网关聚合所有服务的Swagger接口文档   * 统一跨域处理   * 统一异常处理 ## 4. 模块说明 ```lua mallcloud -- 父项目,公共依赖 │  ├─mall-business -- 业务模块一级工程 │  │  ├─user-center -- 用户中心[7000] │  │  ├─file-center -- 文件中心[5000] │  │  ├─member-center -- 会员中心[7001] │  │  ├─goods-center -- 商品中心[7002] │  │  ├─order-center -- 订单中心[7003] │  │  ├─marking-center -- 营销中心[7004] │  │─mall-commons -- 通用工具一级工程 │  │  ├─mall-auth-client-spring-boot-starter -- 封装spring security client端的通用操作逻辑 │  │  ├─mall-common-spring-boot-starter -- 封装通用操作逻辑 │  │  ├─mall-db-spring-boot-starter -- 封装数据库通用操作逻辑 │  │  ├─mall-log-spring-boot-starter -- 封装log通用操作逻辑 │  │  ├─mall-redis-spring-boot-starter -- 封装Redis通用操作逻辑 │  │  ├─mall-ribbon-spring-boot-starter -- 封装Ribbon和Feign的通用操作逻辑 │  │  ├─mall-sentinel-spring-boot-starter -- 封装Sentinel的通用操作逻辑 │  │  ├─mall-swagger2-spring-boot-starter -- 封装Swagger通用操作逻辑 │  ├─mall-config -- 配置中心 │  ├─mall-doc -- 项目文档 │  ├─mall-gateway -- api网关一级工程 │  │  ├─zuul-gateway -- netflix-zuul[8080] │  ├─mall-job -- 分布式任务调度一级工程 │  │  ├─job-admin -- 任务管理器[8081] │  │  ├─job-core -- 任务调度核心代码 │  │  ├─job-executor-samples -- 任务执行者executor样例[8082] │  ├─mall-monitor -- 监控一级工程 │  │  ├─sc-admin -- 应用监控[6500] │  │  ├─log-center -- 日志中心[6200] │  ├─mall-uaa -- spring-security认证中心[8000] │  ├─mall-register -- 注册中心Nacos[8848] │  ├─mall-transaction -- 事务一级工程 │  │  ├─txlcn-tm -- tx-lcn事务管理器[7970] │  ├─mall-demo -- demo一级工程 │  │  ├─txlcn-demo -- txlcn的demo │  │  ├─sharding-jdbc-demo -- sharding-jdbc的demo ```
    2021-09-08 00:30:57下载
    积分:1
  • 商品添加的实现(idea maven+ssh)
    idea maven ssh ,含数据库脚本
    2020-04-16下载
    积分:1
  • 前后端分离后台管理项目(springboot+mybatis+vue)
    前端采用Vue、Element UI。 后端采用Spring Boot、Spring Security、Redis & Jwt。 权限认证使用Jwt,支持多终端认证系统。 支持加载动态权限菜单,多方式轻松权限控制。 高效率开发,使用代码生成器可以一键生成前后端代码。 用户管理:用户是系统操作者,该功能主要完成系统用户配置。 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。 岗位管理:配置系统用户所属担任职务。 菜单管理:配置系统菜单,操作权限,按钮权限标识等。 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。 字典管理:对系统中经常使用的一些较为固定的数据进行维护。 参数管理:对系统动态配置常用参数。 通知公告:系统通知公告信息发布维护。 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。 登录日志:系统登录日志记录查询包含登录异常。 在线用户:当前系统中活跃用户状态监控。 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。 代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。 系统接口:根据业务代码自动生成相关的api接口文档。 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。 在线构建器:拖动表单元素生成相应的HTML代码。 连接池监视:监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。
    2020-12-04下载
    积分:1
  • java 上位机与单片机通过串口485通讯
    上位机与单片机通过串口485通讯
    2018-01-10下载
    积分:1
  • js拼图游戏 实例源码下载
    拼图游戏
    2015-03-04下载
    积分:1
  • Java Cookbook - Problems and Solutions for Java Developers (Early Release).epub
    Java continues to grow and evolve, and this Cookbook continues to evolve in tandem. This book helps to get you up to speed right away with hundreds of hands-on recipes across a broad range of Java topics. You’ll learn useful techniques for everything from string handling and functional programming to network communication.Each recipe includes self-contained code solutions that you can freely use, along with a discussion of how and why they work. If you are familiar with the basics of the Java language, this cookbook will bolster your knowledge of the language in general and its many recent changes and how to apply them in your day-to-day development.Recipes include:Methods for compiling, running, and debugging“Packaging” Java classes and building applicationsManipulating, comparing, and rearranging textRegular expressions for string- and pattern-matchingHandling numbers, dates, and timesStructuring data with collections, arrays, and other typesObject-oriented and functional programming techniquesInput/Output, Directory and filesystem operationsNetwork programming on both client and serverProcessing JSON for data interchangeMultithreading and concurrencyUsing Java in Big Data applicationsInterfacing Java with other languages------------------The 4th Edition of this book has been updated to cover changes through Java 12 and includes new recipes for Big Data and data science.
    2020-03-03下载
    积分:1
  • ssm整和实例下载(Struts2_Spring3_MyBatis框架)
    ssm整和实例下载(Struts2_Spring3_MyBatis框架)
    2016-05-12下载
    积分:1
  • java实验室预约管理系统(源码+数据库脚本)
    随着高校教学资源逐步开发,高校教育资源的应用种类逐步增多。而实验室作为高校基本教育资源之一,与日常教学工作开展、课堂项目实践有着密切联系。由此,如何借助新时期技术,加强高校实验室应用数据信息程序开发,在高校智能化管理程序推广中占有基础性地位。该软件是以Java语言为实现预言。其功能在系统内部有源代码直接完成,操作人员只需输入一些简单的汉字,数字,即可达到自己的目标。 登陆账号:admin 密码:123456 package com.company; import com.company.Bean.Student;import com.company.Bean.Teacher;import com.company.Bean.User;import com.company.DB.DB; import javax.swing.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener; public class Main extends JFrame {    private JPanel p;    private JLabel lblName,lblPwd,lblRole;    private JTextField txtName;    private JPasswordField txtPwd;    private JButton btnOk,btnCancle;    String[] s = {"学生","教师","管理员"};    private JComboBox comboBox;    public Main(){        super("用户登录界面");        p = new JPanel();        p.setLayout(null);        lblRole=new JLabel("角色:");        comboBox=new JComboBox(s);        lblName = new JLabel("账户:");        lblPwd = new JLabel("密码:");        txtName = new JTextField(20);        txtPwd = new JPasswordField(20);        btnOk = new JButton("登录");        btnCancle = new JButton("取消");        //注册确定按钮的事件处理        btnOk.addActionListener(new ActionListener() {            @Override            public void actionPerformed(ActionEvent e) {                String strName = txtName.getText();                String strPwd = new String(txtPwd.getPassword());                System.out.println("用户名:" strName "密码:" strPwd);             }        });        //注册取消按钮的事件处理        btnCancle.addActionListener(new ActionListener() {             @Override            public void actionPerformed(ActionEvent e) {                //清空                txtName.setText("");                txtPwd.setText("");             }        });        lblRole.setBounds(90,50,60,25);        comboBox.setBounds(130,50,140,25);        lblName.setBounds(90,80,60,25);        txtName.setBounds(130,80,140,25);        lblPwd.setBounds(90,110,60,25);        txtPwd.setBounds(130,110,140,25);        btnOk.setBounds(130,150,60,25);        btnCancle.setBounds(200,150,60,25);        p.add(lblRole);        p.add(comboBox);        p.add(lblName);        p.add(txtName);        p.add(lblPwd);        p.add(txtPwd);        p.add(btnOk);        p.add(btnCancle);        this.add(p);        this.setSize(400,300);        this.setLocation(300,300);        //设置窗体不可改变大小        this.setResizable(false);        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        btnOk.addActionListener(new ActionListener() {            @Override            public void actionPerformed(ActionEvent e) {               String account =txtName.getText().trim();               String password=txtPwd.getText().trim();               String role=null;               if(comboBox.getSelectedItem().equals("管理员")){                   role="admin";               }               else if(comboBox.getSelectedItem().equals("学生")) {                   role="student";               }               else{                   role="teacher";               }                if(role.equals("admin")){                    User user=new User(account,password);                    if (DB.Login(user)) {                        JOptionPane.showMessageDialog(null, "登录成功", "", JOptionPane.PLAIN_MESSAGE);                        AdminMain adminMain = new AdminMain();                        adminMain.setVisible(true);                        Main.this.setVisible(false);                    }                      else {                        JOptionPane.showMessageDialog(null,"账号密码错误", "", JOptionPane.PLAIN_MESSAGE);                    }                }                else if (role.equals("student")){                    Student student=new Student(account,password);                    if(DB.studentLogin(student)){                        StudentMain studentMain=new  StudentMain();                        studentMain.setVisible(true);                        Main.this.setVisible(false);                        JOptionPane.showMessageDialog(null, "登录成功", "", JOptionPane.PLAIN_MESSAGE);                    }                    else {                        JOptionPane.showMessageDialog(null,"账号密码错误", "", JOptionPane.PLAIN_MESSAGE);                    }                }                else if (role.equals("teacher")){                   Teacher teacher=new Teacher(account,password);                    if(DB.teacherLogin(teacher)){                        TeacherMain teacherMain=new TeacherMain();                        teacherMain.setVisible(true);                        Main.this.setVisible(false);                        JOptionPane.showMessageDialog(null, "登录成功", "", JOptionPane.PLAIN_MESSAGE);                    }                    else {                        JOptionPane.showMessageDialog(null,"账号密码错误", "", JOptionPane.PLAIN_MESSAGE);                    }                }            }        });        btnCancle.addActionListener(new ActionListener() {            @Override            public void actionPerformed(ActionEvent e) {                            }        });    }    public static void main(String[] args) { // write your code here        Main main=new Main();        main.setVisible(true);     }}
    2020-12-12下载
    积分:1
  • 计算器
    计算器
    2014-03-22下载
    积分:1
  • 696516资源总数
  • 106918会员总数
  • 4今日下载