Javase | Java工具类、(SSM)各种依赖的作用

目录:

    • Java工具类:
      • 日期工具类
      • 文件上传工具类
    • 短信工具类
      • 验证码工具类
      • 邮件工具类
      • 代码生成器
    • (SSM)各种依赖的作用:
      • spring-context 依赖:
      • spring-context-supprt 依赖:
      • spring-tx 依赖:
      • mysql-connector-java 依赖:
      • spring-jdbc 依赖:
      • spring-data-jpa 依赖:
      • mybatis 依赖 :
      • mybatis-spring 依赖:
      • mybatis-plus 依赖:
      • spring-web 依赖:
      • spring-webmvc 依赖 :
      • freemarker 依赖:
      • junit 依赖 :
      • spring-test 依赖:
      • kaptcha 依赖 :
      • druid 依赖 :
      • druid 与 mybatis-plus 的区别:
      • jackson-databind 依赖 :
      • springfox-swagger2 依赖:
      • javax.servlet-api 依赖:
      • jackson-databind 依赖 :
      • commons-fileupload 依赖:
      • commons-io 依赖
      • commons-logging 依赖
      • commons-lang
      • commons-beanutils 依赖:
      • commons-collections 依赖 :
      • spring-core 依赖:
      • spring-jdbc 依赖:
      • spring-aspects 依赖:
      • webjars-locator 依赖:
      • logback-classic 依赖 :
      • jstl 依赖
      • quartz 依赖
      • slf4j-api 依赖
      • log4j 依赖:
      • slf4j-log4j12 依赖:
      • spring-context 依赖 :
      • spring-core:
      • spring-beans:
      • spring-aspects 依赖:
      • spring-aop 依赖:
      • Spring Ioc 依赖:
      • c3p0 依赖 :
      • mchange-commons-java 依赖
      • json-lib 依赖 :
      • ezmorph 依赖:
      • lombok 依赖:
      • freemarker 依赖:
      • mail 依赖:
      • dom4j 依赖:
      • commons-httpclient 依赖
      • poi 依赖 :
      • poi-ooxml 依赖
      • itext7-core 依赖
      • springfox-swagger2 依赖
      • spring-security-config 依赖:
      • spring-security-taglibs 依赖:
      • jsr250 依赖:

Java工具类:

日期工具类

public class DateUtils {  // 日期工具类

    public static String nowTime(){
        SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        return simpleDateFormat.format(new Date());
    }
}

文件上传工具类

public class FileUpLoadUtils {  //文件上传工具类

    @Autowired
    DocService docService;

    /**
     *  文件上传方法
     */
    public static DataResults Fileupload(MultipartFile file, HttpServletRequest request, Doc doc, DocService docService) {
        try {
            //1.获取原始文件名
            String uploadFileName = file.getOriginalFilename();
            System.out.println("要上传的原始文件名字是:" + uploadFileName);
            //2.截取文件扩展名
            String extendName = uploadFileName.substring(uploadFileName.lastIndexOf(".") + 1, uploadFileName.length());
            //3.把文件加上随机数,防止文件重复
            String uuid = UUID.randomUUID().toString().replace("-", "").toUpperCase();
            //4.生成的新的服务器文件名
            String newfileName = uuid + "." + extendName;
            System.out.println("生成的新的服务器文件名是:" + newfileName); //防止服务器文件名重名
            //5.获取真实的服务器文件上传地址 (文件的存储位置)
            String filePath = request.getServletContext().getRealPath("/doc") + "/" + newfileName;
            System.out.println("服务器运行目录,最终上传的路径:" + filePath);
            //6.执行上传
            file.transferTo(new File(filePath));
            System.out.println("文件上传结束!");

            //新增对象到数据库
            doc.setFileName(newfileName);
            boolean b=docService.save(doc);
            // DataResults : 数据结果工具类,作用: 显示方法的执行状态,该方法中参数为
            // ResultCode:   状态码枚举
            if (b) {
                return DataResults.success(ResultCode.SUCCESS);
            } else {
                return DataResults.fail(ResultCode.FAIL);
            }
        } catch (
                IOException e) {
            e.printStackTrace();
            return DataResults.fail(ResultCode.FAIL);
        }
    }
}

短信工具类

/**
 * 短信工具类
 */
public class SendsMsgUtf8Utils {

    //请求地址
    private static String Url = "http://106.ihuyi.cn/webservice/sms.php?method=Submit";

    // contentInfo:前后端传进来的要发送的信息的内容
    public static String sengMessage(String phone,String contentInfo) throws Exception {

        HttpClient client = new HttpClient();
        PostMethod method = new PostMethod(Url);

        client.getParams().setContentCharset("UTF-8");
        method.setRequestHeader("ContentType","application/x-www-form-urlencoded;charset=UTF-8");

        /**
         *  随机的验证码 -- 将该随机生成的"验证码"用在信息模板中, 当然也可以用 contentInfo(传进来的信息参数)用于信息模板中
         */

        int mobile_code = (int)((Math.random()*9+1)*100000);

        /**
         *  信息模板,按照此格式发送信息,只有“验证码”(mobile_code)处的变量可改, 可改成传进来的 contentInfo 参数
         *  想要发其他的信息模板可上官网寻找、或上官网申请模板
         */
        String content = new String("您的验证码是:" + mobile_code + "。请不要把验证码泄露给其他人。");  //信息模板,按照此格式发送信息

        NameValuePair[] data = {//提交短信

                /**
                 *  配置第三方短信接口信息:
                 *    account :   注册登录第三方短信接口平台 --- 服务查看用户名是登录用户中心 --- 验证码短信 --- 产品总览 --- APIID
                 *    password : 登录 --- 用户中心 --- 验证码短信 --- 产品总览 --- APIKEY
                */
                new NameValuePair("account", "C93854163"),   // APIID
                new NameValuePair("password", "6729a3ab5c4ea8e9ea179d9fd14d970a"), // APIKEY
                //手机号码
                new NameValuePair("mobile", phone),
                //要发送的短信模板内容
                new NameValuePair("content", content), //此处填的模板字符串,如content
        };
        method.setRequestBody(data);

        client.executeMethod(method);
        String SubmitResult =method.getResponseBodyAsString();
        //System.out.println(SubmitResult);
        Document doc = DocumentHelper.parseText(SubmitResult);
        Element root = doc.getRootElement();
        String code = root.elementText("code");  //状态码
        String msg = root.elementText("msg");
        String smsid = root.elementText("smsid");

        System.out.println("---------------------");
        System.out.println("操作状态码: "+code);
        System.out.println("msg为: "+msg);
        System.out.println("smsid为: "+smsid);

        if("2".equals(code)){
            System.out.println("短信提交成功-------");
        }
        return code;  //操作状态状态码 2:表示短信发送成功
    }
}

验证码工具类

@Controller
@RequestMapping("/code")
public class CodeController {

    /**
     * 生成随机的验证码(图片)
     */
    @RequestMapping("/createImage")
    public void createImage(HttpServletResponse response, HttpSession session) {
        try {
            int height = 34;
            int width = 110;

            //准备一个绘图工具类 画布  RGB( Red  Green  Blue 三原色)
            BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
            //画笔
            Graphics g = bufferedImage.getGraphics();
            //把画布填充颜色 白色填充矩形
            g.setColor(Color.WHITE);
            g.fillRect(0, 0, width, height);

            //随机生成字符串
            String words = "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM0123456789";
            char[] chars = words.toCharArray();
            Random random = new Random();
            StringBuilder sb = new StringBuilder();
            for (int i = 1; i <= 4; i++) {
                //随机一个下标
                int index = random.nextInt(chars.length);
                char c = chars[index];
                sb.append(c);
                Font font = new Font("Arial", Font.BOLD, 25);
                //随机颜色
                int red = random.nextInt(256);
                int green = random.nextInt(256);
                int blue = random.nextInt(256);
                Color color = new Color(red, green, blue);
                //绘制验证码
                g.setColor(color);
                g.setFont(font);
                g.drawString(String.valueOf(c), (width / 5) * i, 30);
            }

            //绘制验证干扰线
            for (int i = 1; i <= 10; i++) {
                //随机颜色
                int red = random.nextInt(256);
                int green = random.nextInt(256);
                int blue = random.nextInt(256);
                Color color = new Color(red, green, blue);

                g.setColor(color);
                int x1 = random.nextInt(width);
                int y1 = random.nextInt(height);
                int x2 = random.nextInt(width);
                int y2 = random.nextInt(height);
                g.drawLine(x1, y1, x2, y2);

            }

            System.out.println("系统正确随机的验证码是:" + sb.toString());
            session.setAttribute("syscode",sb.toString());
            //最后输出图片
            response.setContentType("image/jpg");//浏览器的响应类型是图片
            ServletOutputStream outputStream = response.getOutputStream();
            ImageIO.write(bufferedImage, "jpg", outputStream);

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

邮件工具类

/**
 * 邮件工具类
 */
public class EmailSendUtils {

    /**
     * 返回一个邮件发送对象
     * @return
     */
    public static JavaMailSenderImpl createJavaMailSenderImpl() {
        JavaMailSenderImpl javaMailSender = new JavaMailSenderImpl();
        javaMailSender.setHost("smtp.qq.com");//实际项目中,平台搭建邮件服务器,如果真实项目需要自己搭建
        // 发送方邮箱 平台官方邮箱
        javaMailSender.setUsername("[email protected]"); //模拟官方邮箱账号
        // 发送秘钥 不是邮箱密码 也不是QQ密码!!!
        javaMailSender.setPassword("raorcfdtjdnabfih"); //官方邮箱秘钥
        // 邮件协议
        javaMailSender.setProtocol("smtp");
        //属性
        Properties properties = new Properties();
        properties.setProperty("mail.smtp.auth", "true");
        properties.setProperty("mail.smtp.from", "[email protected]"); //发送方
        properties.setProperty("mail.debug", "true");
        javaMailSender.setJavaMailProperties(properties);
        return javaMailSender;
    }

    /**
     * @param emailTo 发送给谁
     * @param content 邮件内容
     * @param title   邮件标题
     */
    public static void sendEmail(String emailTo, String content, String title) throws Exception {
        //构建“邮件发送”对象
        JavaMailSenderImpl sender = EmailSendUtils.createJavaMailSenderImpl();
        //构建“简单邮件”对象     SimpleMailMessage:简单邮箱对象
        SimpleMailMessage smm = new SimpleMailMessage();
        // 设定邮件参数
        smm.setFrom(sender.getUsername());  //发送者是谁
        smm.setTo(emailTo);  //发送给谁
        smm.setSubject(title);  //邮件标题
        smm.setText(content);   //邮箱内容给
        sender.send(smm);
        System.out.println("邮件发送" + emailTo + "成功....");

    }

}

代码生成器

/**
 * MyBatis Plus官网代码生成器
 */
public class GeneratorCodeConfig {

    public static String scanner(String tip) {
        Scanner scanner = new Scanner(System.in);
        StringBuilder help = new StringBuilder();
        help.append("请输入" + tip + ":");
        System.out.println(help.toString());
        if (scanner.hasNext()) {
            String ipt = scanner.next();
            if (StringUtils.isNotEmpty(ipt)) {
                return ipt;
            }
        }
        throw new MybatisPlusException("请输入正确的" + tip + "!");
    }

    public static void main(String[] args) {
        // 代码生成器
        AutoGenerator mpg = new AutoGenerator();

        // 全局配置
        GlobalConfig gc = new GlobalConfig();
        String projectPath = System.getProperty("user.dir"); // E:\Server\OA-SYSTEM
        System.out.println(projectPath);
        System.out.println(projectPath + "/src/main/java");
        gc.setOutputDir(projectPath + "/src/main/java");
        gc.setAuthor("bruce"); //作者信息
        gc.setOpen(false);

        //实体属性 Swagger2 接口 注解
        gc.setSwagger2(false);
        mpg.setGlobalConfig(gc);

        // 改:配置自己数据源-----------数据源配置
        DataSourceConfig dsc = new DataSourceConfig();
        dsc.setUrl("jdbc:mysql://127.0.0.1:3306/oa2022?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true");
        dsc.setDriverName("com.mysql.cj.jdbc.Driver");
        dsc.setUsername("root");
        dsc.setPassword("123456");
        mpg.setDataSource(dsc);

        // 配置自己包配置
        PackageConfig pc = new PackageConfig();
        pc.setParent("com.oa");
        pc.setEntity("bean");
        pc.setMapper("mapper");
        pc.setService("service");
        pc.setServiceImpl("service.impl");
        mpg.setPackageInfo(pc);


        // 配置模板
        TemplateConfig templateConfig = new TemplateConfig();

        templateConfig.setXml(null);
        mpg.setTemplate(templateConfig);

        // 策略配置
        StrategyConfig strategy = new StrategyConfig();
        strategy.setNaming(NamingStrategy.underline_to_camel);
        strategy.setColumnNaming(NamingStrategy.underline_to_camel);

        strategy.setInclude(scanner("表名,多个英文逗号分割").split(","));
        strategy.setControllerMappingHyphenStyle(true);
        //数据库表的前缀
        strategy.setTablePrefix("tb_");
        mpg.setStrategy(strategy);
        mpg.setTemplateEngine(new FreemarkerTemplateEngine());
        mpg.execute();
    }
}

(SSM)各种依赖的作用:

spring-context 依赖:

作用: spring的context上下文即IoC容器, spring中ioc容器要生效需要的依赖。
这个jar文件为Spring核心提供了大量扩展。可以找到使用Spring ApplicationContext
特性时所需的全部类,JDNI 所需的全部类,instrumentation组件以及校验Validation 方面的相关类

spring-context-supprt 依赖:

作用: Spring context的扩展支持,用于MVC方面 ( 也具有spring-content的基本功能)

spring-tx 依赖:

作用: 为JDBC、Hibernate、JDO、JPA等提供的一致的声明式和编程式事务管理

mysql-connector-java 依赖:

作用: 连接mysql和java的依赖。
Java 连接MySQL需要驱动包,否则JDBC无法访问数据库(无法注册驱动),
常用的是mysql-connector-java,在idea中新建项目时可以在选择依赖时勾选Mysql,这样就会自动加载进来

spring-jdbc 依赖:

作用: 连接mysql和Java、创建sql语句、执行sql语句,为对JDBC 的简单封装

spring-data-jpa 依赖:

作用:jpa的前身是著名的ssh中的h——>Hibernate,所以spring-data-jpa 不是mybatis的依赖,用的比较少,但ssm项目中依然需要该依赖

mybatis 依赖 :

作用:mybatis框架需要的依赖。 mybatis的常用的加载数据库的机制为SPI加载机制。
Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、
创建statement等繁杂的过程。程序员直接编写原生态sql,可以严格控制sql执行性能,灵活度高
( mybatis是一个jdbc框架,简化关于jdbc的操作,程序员只需写简单的mysql即可实现原本该有的内容)
----mybatis的jdbc中优化CURD的框架,而druid是jdbc中关于管理数据库连接对象(将数据库连接对象)放入到druid连接池中,两者处理的方面不同,有很大的区别

mybatis-spring 依赖:

作用: 连接spring和mybatis

mybatis-plus 依赖:

作用: mybatis框架需要的依赖,同中包含了 mybatis依赖 和 mybatis-spring(连接mybatis和spring)这两个依赖,
一个依赖有两个的效果

spring-web 依赖:

作用: 项目中的web内容要用到的依赖 ( 有了spring-webmvc就不用该依赖了 ) --为项目中是web应用内容服务
Spring web:包含Web应用开发时,用到Spring框架时所需的核心类,包括自动载入

spring-webmvc 依赖 :

作用: SSM项目中的mvc以及web要用到的依赖。
这个jar 文件包含Spring MVC 框架相关的所有类。包括框架的Servlets,Web MVC框架,
控制器和视图支持。如果你的应用使用了独立的MVC 框架,则无需这个JAR 文件里的任何类

freemarker 依赖:

作用: freemarker模板引擎,简化业务代码

junit 依赖 :

作用: 进行单元测试要用的依赖。

spring-test 依赖:

作用: 测试代码要用到的依赖, 与 junit有功能重叠,但不冲突

kaptcha 依赖 :

作用: 谷歌的验证码工具,用于在登录页面时产生验证码

druid 依赖 :

(druid是jdbc的框架, 其将数据库连接对象交给druid连接池管理,仅仅是连接的这一开始部分,而mybatis-plus是简化连接之后的对数据库的CURD操作)
作用:alibaba 的 druid连接池,是一个jdbc工具,简化jdbc操作 ( jdbc的作用的连接mysql 与 Java,要导入对应的依赖要导入spring-jdbc 和
mysql-connector-java依赖才能实现java连mysql )
连接池依赖 :druid 将数据库连接对象 交给 连接池进行管理 和 连接,不用手动的连接和释放。 druid 能进行监控
druid 能为dataSouce的bean对象服务,把spring下的mybatis的dataSource交给 druid的连接池进行管理,该连接池(druid) 则交给spring进行管理
( 数据库连接池需要的依赖 )
—如要在applicationContext.xml中配置 连接数据库的 数据源( dataSource) bean对象,来配合jdbc.properties配置文件来连接数据库

druid 与 mybatis-plus 的区别:

druid 与 mybatis-plus 都是jdbc的框架,前者将数据库连接对象交给druid连接池来管理,后者管连接之后的CURD操作,后者也是jdbc的框架
(前者是连接,后者是具体的curd操作)

jackson-databind 依赖 :

作用 : 前后端数据传输要用到的依赖(用到与json有关的技术)

springfox-swagger2 依赖:

作用: 在代码中起注释作用,打包后形成一个关于代码信息的api文档

javax.servlet-api 依赖:

作用:为ssm项目中的与servlet有关的内容进行服务所需的依赖。

jackson-databind 依赖 :

作用:

commons-fileupload 依赖:

作用:

commons-io 依赖

作用:Commons IO是针对开发IO流功能的工具类库,为spring中的io流服务
主要包括六个区域:
工具类——使用静态方法执行共同任务
输入——用于InputStream和Reader实现
输出——用于OutputStream和Writer实现
过滤器——各种文件过滤器实现
比较器——各种文件的java.util.Comparator实现
文件监听器——监听文件系统事件的组件

commons-logging 依赖

作用: 用来记录程序运行时的活动的日志记录 的依赖, 在java平台中,有几个可以选择的日志记录的实现(log4j,JDK Logging API)
commons-logging.jar包是使用spring的必备包。(位置在spring-framework-2.5.6.SEC01\lib \jakarta-commons)

commons-lang

作用: 跟java.lang这个包的作用类似,Commons Lang这一组API也是提供一些基础的、通用的操作和处理,
如自动生成toString()的结果、自动实现hashCode()和equals()方法、数组操作、枚举、日期和时间的处理等等。
这一组API的所有包名都以org.apache.commons.lang开头,共有如下8个包:
org.apache.commons.lang
org.apache.commons.lang.builder
org.apache.commons.lang.enum
org.apache.commons.lang.enums
org.apache.commons.lang.exception
org.apache.commons.lang.math
org.apache.commons.lang.mutable
org.apache.commons.lang.time

commons-beanutils 依赖:

作用:Apache开源组织提供的用于操作Java bean的工具包,为bean对象服务

commons-collections 依赖 :

作用:为Java标准的Collections API提供了相当好的补充。在此基础上对其常用的数据结构操作进行了很好的封装、抽象和补充。保证性能的同时大大简化代码。

spring-core 依赖:

作用: Spring的核心工具包。
Spring 其它组件要都要使用到这个包里的类,是其它组件的基本核心,同时可以在自己的应用系统中使用这些工具类

spring-jdbc 依赖:

作用: 对JDBC 的简单封装 ( 用了mybatis 就不用引入jdbc依赖了)

spring-aspects 依赖:

作用: 提供对AspectJ的支持,以便可以方便的将面向方面的功能集成进IDE中,比如Eclipse AJDT。
( 简而言之是: 为spring aop服务的依赖 )

webjars-locator 依赖:

作用: 网络使定位器 依赖

logback-classic 依赖 :

作用: 日志依赖 ( 有其他功能相似的依赖 )

jstl 依赖

作用: 是一个不断完善的开放源代码的JSP标签库,为与jSP相关的内容服务,使得操作JSP的代码更简洁、方便

quartz 依赖

作用:作业调度框架,为作业调度服务。Quartz是一个完全由java编写的开源作业调度框架,由OpenSymphony组织开源出来。
所谓作业调度其实就是按照程序的设定,某一时刻或者时间间隔去执行某个代码。最常用的就是报表的制作了。

slf4j-api 依赖

作用: 为日志门面服务,与之前的日志依赖功能类似,但不重叠,相互使用。
是为java提供的简单日志Facade。Facade门面,更底层一点说就是接口。它允许用户以自己的喜好,在工程中通过slf4j接入不同的日志系统。
与 slf4j即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种各样的日志系统。
按照官方的说法,SLF4J是一个用于日志系统的简单Facade,允许最终用户在部署其应用时使用其所希望的日志System

log4j 依赖:

作用: Log4j 框架是用 Java 语言编写的标准日志记录框架 ( 一般为其添加一个log4j.properties配置文件,来配置日志需要信息)

slf4j-log4j12 依赖:

作用: ①连接slf4j依赖 和 log4j 依赖,为这两个依赖服务 ( 连接slf4依赖 和 log4j依赖,是这两个依赖的适配器 )
②语句调用slf4j-log4j12链接slf4j-api和log4j中间的适配器。它实现了slf4j-apiz中StaticLoggerBinder接口,
从而使得在编译时绑定的是slf4j-log4j12的getSingleton()方法log4j,这个是具体的日志系统。通过slf4j-log4j12初始化Log4j,达到最终日志的输出

spring-context 依赖 :

作用: 该依赖为Spring 核心(spring-core)提供了大量扩展,帮助项目功能的实现。
可以找到使用Spring ApplicationContext特性时所需的全部类,JDNI 所需的全部类,instrumentation组件以及校验Validation 方面的相关类。
外部依赖spring-beans, (spring-aop)。----第一个依赖介绍就是它

spring-core:

作用: Spring的核心工具包,Spring的核心功能/基本功能需要的依赖。Core模块主要的功能是实现了控制反转( IOC )与依赖注入( DI )、Bean配置以及加载。
Core模块中有Beans、BeanFactory、BeanDefinitions、ApplicationContext等概念,所以说有spring’-core是IOC、DI、bean配置等需要的依赖

spring-beans:

作用: Bean工厂与bean的装配需要的依赖

spring-aspects 依赖:

aspects :切面----面向切面的框架,实现面向切面功能需要的依赖
作用: Spring提供的对AspectJ(面向切面)框架的整合,实现面向切面功能需要的依赖。提供对AspectJ的支持,以便可以方便的将面向方面的功能集成进IDE中,
比如Eclipse AJDT。
( AspectJ:
AspectJ是一个面向切面的框架,它扩展了Java语言。AspectJ定义了AOP语法,它有一个专门的编译器用来生成遵守Java字节编码规范的Class文件。)

spring-aop 依赖:

作用:Spring的面向切面编程,提供AOP(面向切面编程)的实现,( SSM项目不一定要引入该mvaven依赖,因为因为 spring-aop 是负责切面控制的,
目前这个项目还没有太多的业务,所以不需要用横向切面来做。(例如,如果这个系统有很多业务,我就可以用aop来控制事务或者控制日志输出,
如果这个系统目前只有1个 秒杀业务,是个简单系统,就不用切面,也是可以的))

Spring Ioc 依赖:

( 不一定要引入) 作用:控制反转依赖

c3p0 依赖 :

作用:为Java连接数据库服务,使其连接更便捷、快速。c3p0是一个库。它扩展了传统的jdbc数据库连接池,并且支持JDBC3规范和JDBC2的标准扩展
连接池基本的思想是在系统初始化的时候,将数据库连接作为对象存储在内存中,当用户需要访问数据库时,并非建立一个新的连接,
而是从连接池中取出一个已建立的空闲连接对象。 使用完毕后,用户也并非将连接关闭,而是将连接放回连接池中,以供下一个请求访问使用。
而连接的建立、断开都由连接池自身来管理。 同时,还可以通过设置连接池的参数来控制连接池中的初始连接数、
连接的上下限数以及每个连接的最大使用次数、最大空闲时间等等。也可以通过其自身的管理机制来监视数据库连接的数量、使用情况等

mchange-commons-java 依赖

作用: 这是c3p0数据库连接池的辅助包,如果没有这个包系统启动时会报classnotfoundexception,这是更新c3p0-0.9.2版本后分离出来的包,0.9.1的时候还是只是一个包。

json-lib 依赖 :

作用:为json/与json有关的数据转换有关
JSON-lib可以将beans,maps,collections,java arrays,xml转换成json,再将json转换成beans,DynaBeans.

ezmorph 依赖:

作用: ezmorph是一个简单的java类库,用于将一种对象转换成另外一种对象。
ezmorph原先是Json-lib项目中的转换器。EZMorph支持原始数据类型(Primitive),对象(Object),多维数组转换与DynaBeans的转换

lombok 依赖:

作用: Lombok是一款好用顺手的工具,就像Google Guava一样,在此予以强烈推荐,每一个Java工程师都应该使用它。
Lombok是一种Java™实用工具,可用来帮助开发人员消除Java的冗长代码,尤其是对于简单的Java对象:POJO(POJO: 简单的java对象,即javabean对象,除了springbean
其他都是POJO:简单的java对象)。它通过注释实现这一目的,
通过在开发环境中实现Lombok,开发人员可以节省构建诸如hashCode()和equals()这样的方法以及以往用来分类各种accessor和mutator的大量时间。
( lomback是一款简化开发的工具 )
—lombok是一个可以通过简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 Java 代码的工具
( lombok 依赖 和 logback-classic依赖两者是不同的,前者是简化java代码,消除冗长代码,后者的日志依赖 )


     ps:  @NoArgsConstructor、@Getter、@Setter是属于LomBok使用的范畴;

freemarker 依赖:

作用: freemarker是一种与web容器无关的技术,应用并不局限于页面。使用java开发出来的模板引擎。为减少前后缀的输入服务,简化开发,
可在xml文件中设置前后缀,那代码中就可不填文件的前缀和后缀,简化开发。

mail 依赖:

作用: 发送邮件

dom4j 依赖:

作用: dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。 dom4j 是一种解析 XML 文档的开放源代码 XML 框架
dom4j是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件

commons-httpclient 依赖

作用: 远程请求客户端所需的依赖

poi 依赖 :

作用之一: 导出excel表格要用到
作用: 开发中经常会设计到excel的处理,如导出Excel,导入Excel到数据库中,操作Excel目前有两个框架,一个是apache 的poi, 另一个是 Java Excel
Apache POI 简介是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程式对Microsoft Office(Excel、WORD、PowerPoint、Visio等)
格式档案读和写的功能 ( 为读取和形成各类文档服务的依赖 ) --不同的文档格式有不同的依赖

poi-ooxml 依赖

作用: 是poi的依赖的一种, 不同的依赖代表不同的文档格式。

itext7-core 依赖

作用:

springfox-swagger2 依赖

作用: 在代码中起注释作用,打包后形成一个关于代码的api文档

spring-security-config 依赖:

作用: spring 安全链所需的依赖

spring-security-taglibs 依赖:

作用:

jsr250 依赖:

作用:

你可能感兴趣的:(Java知识点-整合,java,SSM,spring,maven注解,Java,Java开发,工具类)