java高分面试指南:springboot入门教程

2021/8/4 22:08:29

本文主要是介绍java高分面试指南:springboot入门教程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

注意!如果您选择了非默认引擎,需要在 AutoGenerator 中 设置模板引擎。

AutoGenerator generator = new AutoGenerator();



// set freemarker engine

generator.setTemplateEngine(new FreemarkerTemplateEngine());



// set beetl engine

generator.setTemplateEngine(new BeetlTemplateEngine());



// set custom engine (reference class is your custom engine class)

generator.setTemplateEngine(new CustomTemplateEngine());



// other config 

编写配置


  • 配置 GlobalConfig
GlobalConfig globalConfig = new GlobalConfig();

globalConfig.setOutputDir(System.getProperty("user.dir") + "/src/main/java");

globalConfig.setAuthor("jobob");

globalConfig.setOpen(false);

  • 配置 DataSourceConfig
DataSourceConfig dataSourceConfig = new DataSourceConfig();

dataSourceConfig.setUrl("jdbc:mysql://localhost:3306/ant?useUnicode=true&useSSL=false&characterEncoding=utf8");

dataSourceConfig.setDriverName("com.mysql.jdbc.Driver");

dataSourceConfig.setUsername("root");

dataSourceConfig.setPassword("password");

自定义模板引擎


请继承类 com.baomidou.mybatisplus.generator.engine.AbstractTemplateEngine

自定义代码模板


//指定自定义模板路径, 位置:/resources/templates/entity2.java.ftl(或者是.vm)

//注意不要带上.ftl(或者是.vm), 会根据使用的模板引擎自动识别

TemplateConfig templateConfig = new TemplateConfig()

    .setEntity("templates/entity2.java");



AutoGenerator mpg = new AutoGenerator();

//配置自定义模板

mpg.setTemplate(templateConfig);

自定义属性注入


InjectionConfig injectionConfig = new InjectionConfig() {

    //自定义属性注入:abc

    //在.ftl(或者是.vm)模板中,通过${cfg.abc}获取属性

    @Override

    public void initMap() {

        Map<String, Object> map = new HashMap<>();

        map.put("abc", this.getConfig().getGlobalConfig().getAuthor() + "-mp");

        this.setMap(map);

    }

};

AutoGenerator mpg = new AutoGenerator();

//配置自定义属性注入

mpg.setCfg(injectionConfig);

entity2.java.ftl

自定义属性注入abc=${cfg.abc}

entity2.java.vm

自定义属性注入abc=$!{cfg.abc}



字段其他信息查询注入 

-----------



![](https://www.www.zyiz.net/i/ll/?i=20210724163824265.png?,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM1OTc1ODY0,size_16,color_FFFFFF,t_70)



new DataSourceConfig().setDbQuery(new MySqlQuery() {

/**

 * 重写父类预留查询自定义字段<br>

 * 这里查询的 SQL 对应父类 tableFieldsSql 的查询字段,默认不能满足你的需求请重写它<br>

 * 模板中调用:  table.fields 获取所有字段信息,

 * 然后循环字段获取 field.customMap 从 MAP 中获取注入字段如下  NULL 或者 PRIVILEGES

 */

@Override

public String[] fieldCustom() {

    return new String[]{"NULL", "PRIVILEGES"};

}

})



mybaits常用注解

===========



 ![](https://www.www.zyiz.net/i/ll/?i=20210724164724517.png?,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM1OTc1ODY0,size_16,color_FFFFFF,t_70)

====================================================================================================================================================================================================



 编写一个简单的登陆注册功能

==============



 首先先建立好数据库,创建User表



![](https://www.www.zyiz.net/i/ll/?i=20210724165340399.png?,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM1OTc1ODY0,size_16,color_FFFFFF,t_70)



 再idea里创建好框架



 ![](https://www.www.zyiz.net/i/ll/?i=20210724165055518.png?,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM1OTc1ODY0,size_16,color_FFFFFF,t_70)



 model里的User.java



package org.shipin.model;

import lombok.Data;

@Data

public class User {

private Integer id;

private String usernum;

private String password;

private String username;

private String userphone;

}



mappaer里的UserMapper.java 这个是接口



package org.shipin.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import org.apache.ibatis.annotations.Mapper;

import org.apache.ibatis.annotations.Select;

import org.shipin.model.User;

@Mapper

public interface UserMapper extends BaseMapper {

/**

 * 根据电话查询用户

 * @param phone

 * @return

 */

@Select("select * from `user` where `usernum` = #{usernum}")

User selectUserByUsernum(String phone);

}



controller里的UserController.java



package org.shipin.controller;

import cn.hutool.crypto.SecureUtil;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;

import io.swagger.annotations.ApiOperation;

import org.shipin.domain.ResponseMessage;

import org.shipin.mapper.UserMapper;

import org.shipin.model.User;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.PostMapping;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.ResponseBody;

@Controller

@RequestMapping("/user")

public class UserController {

@Autowired

private UserMapper userMapper;



@ApiOperation("用户登录")

@PostMapping("/login")

@ResponseBody

public Object login(String usernum,String password){

    QueryWrapper<User> queryWrapper = new QueryWrapper<>();



    queryWrapper.eq("usernum",usernum).eq("password",SecureUtil.md5(password));

    User user = userMapper.selectOne(queryWrapper);

    if(user == null){

// 失败

        return ResponseMessage.error("登录失败");

    }else {

// 成

        return ResponseMessage.success(1);

    }



}



@ApiOperation("注册用户")

@PostMapping("/register")

@ResponseBody

public ResponseMessage register(String usernum,String password,String username,String userphone){



    if(usernum == null || usernum.length() < 6){

写在最后

作为一名即将求职的程序员,面对一个可能跟近些年非常不同的 2019 年,你的就业机会和风口会出现在哪里?在这种新环境下,工作应该选择大厂还是小公司?已有几年工作经验的老兵,又应该如何保持和提升自身竞争力,转被动为主动?

就目前大环境来看,跳槽成功的难度比往年高很多。一个明显的感受:今年的面试,无论一面还是二面,都很考验Java程序员的技术功底。

最近我整理了一份复习用的面试题及面试高频的考点题及技术点梳理成一份“Java经典面试问题(含答案解析).pdf和一份网上搜集的“Java程序员面试笔试真题库.pdf”(实际上比预期多花了不少精力),包含分布式架构、高可扩展、高性能、高并发、Jvm性能调优、Spring,MyBatis,Nginx源码分析,Redis,ActiveMQ、Mycat、Netty、Kafka、Mysql、Zookeeper、Tomcat、Docker、Dubbo、Nginx等多个知识点高级进阶干货!

由于篇幅有限,为了方便大家观看,这里以图片的形式给大家展示部分的目录和答案截图!有需要的朋友可以戳这里免费获取

Java经典面试问题(含答案解析)

阿里巴巴技术笔试心得

序员面试笔试真题库.pdf**”(实际上比预期多花了不少精力),包含分布式架构、高可扩展、高性能、高并发、Jvm性能调优、Spring,MyBatis,Nginx源码分析,Redis,ActiveMQ、Mycat、Netty、Kafka、Mysql、Zookeeper、Tomcat、Docker、Dubbo、Nginx等多个知识点高级进阶干货!

由于篇幅有限,为了方便大家观看,这里以图片的形式给大家展示部分的目录和答案截图!有需要的朋友可以戳这里免费获取
[外链图片转存中…(img-FsVqLGDG-1628077748570)]

Java经典面试问题(含答案解析)

[外链图片转存中…(img-xgSXj0hl-1628077748573)]

阿里巴巴技术笔试心得

[外链图片转存中…(img-XVocXQtE-1628077748574)]



这篇关于java高分面试指南:springboot入门教程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程