使用Scala语言开发时,自动生成get和set方法

不用写return进行返回, 因为它的最后一行就是返回值

先建立四个层(层层递进)

domain 表结构的建立

repository(DAO) 实现接口层

service 实现业务层

controller 实现控制层

domain层开发

MetaTable.scala

package com.imooc.imoocbootscala.domain

import javax.persistence.{Entity, GeneratedValue, Id, Table}

import scala.beans.BeanProperty

/**
* 使用Scala语言开发时,自动生成get和set方法
* 不用写return进行返回, 因为它的最后一行就是返回值
*/
@Entity
@Table
class MetaTable { @Id
@GeneratedValue
@BeanProperty
var id:Integer = _ @BeanProperty
var name:String = _ @BeanProperty
var tableType:String = _ @BeanProperty
var dbId:Integer = _
}

repository层开发

MetaTableRepository.scala

package com.imooc.imoocbootscala.repository

import com.imooc.imoocbootscala.domain.MetaTable
import org.springframework.data.repository.CrudRepository trait MetaTableRepository extends CrudRepository[MetaTable, Integer]{ }

serive层开发

MetaTableService.scala

package com.imooc.imoocbootscala.service

import com.imooc.imoocbootscala.domain.MetaTable
import com.imooc.imoocbootscala.repository.MetaTableRepository
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.stereotype.Service
import org.springframework.transaction.annotation.Transactional /**
*
* 注意,导入的注解包和java的完全不一样
*/
@Service
class MetaTableService @Autowired()(metaTableRepository: MetaTableRepository){ @Transactional //事务
def save(metaTable:MetaTable)= {
metaTableRepository.save(metaTable)
} def query() = {
metaTableRepository.findAll()
} }

controller层开发

MetaTableController.scala

package com.imooc.imoocbootscala.controller

import com.imooc.imoocbootscala.domain.MetaTable
import com.imooc.imoocbootscala.service.MetaTableService
import com.imooc.imoocbootscala.utils.ResultVOUtil
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.web.bind.annotation._ @RestController
@RequestMapping(Array("/meta/table"))
class MetaTableController @Autowired()(metaTableService: MetaTableService){ @RequestMapping(value = Array("/"), method = Array(RequestMethod.POST))
@ResponseBody
def save(@ModelAttribute metaTable:MetaTable) = {
metaTableService.save(metaTable)
ResultVOUtil.success() // 此处就是Scala调用已有的Java代码
} @RequestMapping(value = Array("/"), method = Array(RequestMethod.GET))
@RequestBody
def query() = {
ResultVOUtil.success(metaTableService.query())
} }

属性值:

application.yml

server:
port: 7777
context-path: /scala-boot
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
username: root
password: root
url: jdbc:mysql://localhost:3306/bootscala?useSSL=false
jpa:
hibernate:
ddl-auto: update
database: mysql

功能测试:

运行代码,在控制台查看,是否运行成功
在IDEA控制台查看信息:

去终端中的mysql下查看信息:

用postman软件,进行测试:

save()方法的测试:

query()方法的测试:

Scala代码开发 metaTable(元表)的更多相关文章

  1. 创建工程支持scala代码开发

    第一步:idea当中创建创建普通maven工程 File ==> New ==> Project 第二步:修改pom.xml添加scala的版本以及打包插件 <dependencie ...

  2. IntelliJ IDEA开发Scala代码,与java集成,maven打包编译

    今天尝试了一下在IntelliJ IDEA里面写Scala代码,并且做到和Java代码相互调用,折腾了一下把过程记录下来. 首先需要给IntelliJ IDEA安装一下Scala的插件,在IDEA的启 ...

  3. 利用Scala语言开发Spark应用程序

    Spark内核是由Scala语言开发的,因此使用Scala语言开发Spark应用程序是自然而然的事情.如果你对Scala语言还不太熟悉,可 以阅读网络教程A Scala Tutorial for Ja ...

  4. 搭建eclipse+maven+scala-ide的scala web开发环境

    http://www.tuicool.com/articles/NBzAzy 江湖传闻,scala开发的最佳利器乃 JetBrains 的神作 IntelliJ IDEA ,外加构建工具sbt 是也. ...

  5. spark之scala程序开发(集群运行模式):单词出现次数统计

    准备工作: 将运行Scala-Eclipse的机器节点(CloudDeskTop)内存调整至4G,因为需要在该节点上跑本地(local)Spark程序,本地Spark程序会启动Worker进程耗用大量 ...

  6. scala程序开发入门

    scala程序开发入门,快速步入scala的门槛: 1.Scala的特性: A.纯粹面向对象(没有基本类型,只有对象类型).Scala的安装与JDK相同,只需要解压之后配置环境变量即可:B.Scala ...

  7. Scala进阶之路-为什么要学习Scala以及开发环境搭建

    Scala进阶之路-为什么要学习Scala以及开发环境搭建 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 最近人工智能和大数据那是相当的火呀,人工智能带动了Python的流行,区块 ...

  8. Scala语言开发入门

    在本系列的第一篇文章 <使用递归的方式去思考>中,作者并没有首先介绍 Scala 的语法,这样做有两个原因:一是由于过多的陷入语法的细节其中,会分散读者的注意力.反而忽略了对于基本概念,基 ...

  9. 分别用Eclipse和IDEA搭建Scala+Spark开发环境

    开发机器上安装jdk1.7.0_60和scala2.10.4,配置好相关环境变量.网上资料很多,安装过程忽略.此外,Eclipse使用Luna4.4.1,IDEA使用14.0.2版本. 1. Ecli ...

随机推荐

  1. 创建Kafka0.8.2生产者与消费者

    一.下载安装Kafka0.8.2 二.vi config/server.properties 三.修改为advertised.host.name=192.168.1.76 四.rm -rf  /tmp ...

  2. MDK5使用技巧

    1.文本美化 修改 修改字体以及颜色如下: 修改用户自定义的关键字,如下: 代码编辑技巧 1.TAB键的妙用 使用TAB键可以整体向右移动相应位,使用SHIFT+TAB键整体左移相应位. 2.快速定位 ...

  3. 开始第一个Android应用程序

    Android应用程序建立在应用程序框架之上,所以Android编程就是面向应用程序框架API编程---与编写普通的Java SE没有太大区别,只是增加了一些API. 1.使用eclipse开发第一个 ...

  4. Docker添加官方加速源(必须)

    在国内使用Docker必须用加速镜像不然的话无论是pull 官方的还是私有的镜像都会WAIT TIME EXCEED 下面给出macos的添加方式,非常简单 macOS 对于使用 macOS 的用户, ...

  5. Mysql快速重置root密码

    以Mac版本为例 首先关闭mysql服务 然后新建一个Terminal 1.输入 sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables 2 ...

  6. java并发编程实战:第十二章---并发程序的测试

    并发程序中潜在错误的发生并不具有确定性,而是随机的. 安全性测试:通常会采用测试不变性条件的形式,即判断某个类的行为是否与其规范保持一致 活跃性测试:进展测试和无进展测试两方面,这些都是很难量化的(性 ...

  7. 原创:MVC 5 实例教程(MvcMovieStore 新概念版:mvc5.0,EF6.01) - 1、初露锋芒

    说明:MvcMovieStore项目已经发布上线,想了解最新版本功能请登录 MVC 影视(MvcMovie.cn) 进行查阅.如需转载,请注明出处:http://www.cnblogs.com/Dod ...

  8. solr特点二:Facet(1)

    一.   Facet 简介 Facet 是 solr 的高级搜索功能之一 , 可以给用户提供更友好的搜索体验 . 在搜索关键字的同时 , 能够按照 Facet 的字段进行分组并统计 . 二.   Fa ...

  9. 手动编译安装lamp之mysql

    转自马哥教育的讲课文档 二.安装mysql-5.5.28 1.准备数据存放的文件系统 新建一个逻辑卷,并将其挂载至特定目录即可.这里不再给出过程. 这里假设其逻辑卷的挂载目录为/mydata,而后需要 ...

  10. eFrameWork学习笔记-eOleDB

    eOleDB是eFrameWork框架下基础的数据访问类,用于执行SQL语句,返回DataTable,分页,返回数据库所有库,库的所有表,表的所有列,Json导入.导出等. HTML: <div ...