DOWNLOAD PHẦN MỀM KEIL C UVISION v4 v5 Full Crack

Leave a Comment

Link Source: DOWNLOAD PHẦN MỀM KEIL C UVISION v4 v5 Full Crack
Thể loại: Phần mềm PC
Tags: Học hành, Lập trình, Phần mềm

DOWNLOAD PHẦN MỀM KEIL C MDK ARM v4 v5 Full Crack


keil (1)


Keil C là một phần mềm hỗ trợ cho người dùng trong việc lập trình cho vi điều khiển các dòng khác nhau (Atmel, AVR, PIC..). Keil C giúp người dùng soạn thảo và biên dịch chương trình C hay cả ASM thành ngôn ngữ máy để nạp vào vi điều khiển giúp chúng ta tương tác giữa vi điều khiển và người lập trình.


Download KEIL C UVISION 4 and KEIL C UVISION 5


Hôm nay, mình xin giới thiệu đến các bạn các bước cài đặt phần mềm lập trình cho ARM Keil C V5. Đầu tiên các bạn tải phần mềm Keil C V5 Full crack tại đây. (Keil C – V4 làm tương tự nhé).


KEIL C UVISION v4 v5 FULL CRACK


Hướng dẫn cài đặt Keil mdk ARM


Sau khi các bạn download phần mềm Keil C về, các bạn giải nén sẽ ra thư mục KeilC V5.


Trong thư mục ARM chứa bộ cài phần mềm Keil: mdk511.exe và c51v901.exe. Vui lòng chọn 1 trong 2 để cài đặt sau đó chạy keygen để crack. Chạy file mdk511.exe

Hộp thoại cài đặt xuất hiện, các bạn chọn Next.


keil (13)


Tick vào ô “I agree to all the terms of the preceding License Agreement”, sau đó chọn Next.


keil (12)


Tiếp theo, các bạn chọn đường dẫn lưu thư mục cài đặt, sau đó chọn Next.


keil (11)


Tiếp theo, các bạn điền đầy đủ thông tin, và chọn Next.


keil (10)


Sau đó các bạn chờ để máy tự động tiến hành cài đặt.


keil (9)


Sau khi máy cài đặt xong, các bạn chọn Finish.


keil (8)

Sau đó, hộp thoại Pack Installer xuất hiện, các bạn nhấn OK.


keil (7)


Trong hộp thoại Pack Installer, các bạn install dòng chip các bạn đang sử dụng.


keil (6)


Sau khi quá trình Install kết thúc, các bạn tắt hộp thoại Pack Installer.


Tiến hành crack


Các bạn chạy chương trình Keil uVision 5 vừa cài đặt ở dạng Run as Admin, sau đó vào File License Management.


keil (5)


Hộp thoại License Management xuất hiện, các bạn copy mã CID.


keil (4)


Sau đó, các bạn vào thư mục Crack /keygen, Click chạy file keygen.exe và làm theo các bước hướng dẫn trong hình sau.


keil (3)


Tiếp theo, quay trở lại hộp thoại License Management , và làm theo hướng dẫn như dưới đây.


keil (2)


Như vậy là đã xong các bước cài đặt và crack thành công phần mềm Keil C V5 cho 8051 & ARM.



Download Keil C V5 or Keil C V4 (nên dùng)



Chúc các bạn thành công!


KEIL C UVISION4 FULL CRACK


Nguồn: dammedientu.com/download-keilc-5-bid7.html



Link Source: DOWNLOAD PHẦN MỀM KEIL C UVISION v4 v5 Full Crack
Xem Tiếp

Proteus Pro 8.6 Full Portable Phần mềm giả lập mạch điện tử

Leave a Comment

Link Source: Proteus Pro 8.6 Full Portable Phần mềm giả lập mạch điện tử
Thể loại: Phần mềm PC
Tags: Designer, Giả lập, Học hành, Lập trình, Mô phỏng, Phần mềm

Proteus Pro 8.6 Full Portable Phần mềm giả lập mạch điện tử


proteus8


Proteus Pro 8.6 là phần mềm cho phép giả lập mô phỏng hoạt động của mạch điện tử bao gồm phần thiết kế mạch và viết chương trình điều khiển.proteus8 (1)


Proteus Pro 8.6 là phần mềm cho phép giả lập mô phỏng hoạt động của mạch điện tử bao gồm phần thiết kế mạch và viết chương trình điều khiển cho các họ vi điều khiển như MCS-51, PIC, AVR…Proteus là phần mềm mô phỏng mạch điện tử của Lancenter Electronics, mô phỏng cho hầu hết các linh kiện điện tử thông dụng, đặc biệt hỗ trợ cho cả các MCU như PIC, 8051, AVR, Motorola.


Phần mềm Proteus Pro 8.6 bao gồm 2 chương trình: ISIS cho phép mô phỏng mạch và ARES dùng để vẽ mạch in. Proteus là công cụ mô phỏng cho các loại Vi Điều Khiển khá tốt, nó hỗ trợ các dòng VĐK 8051, AVR, PIC, dsPIC, ARM … các giao tiếp I2C, SPI, CAN, USB, Ethenet,… ngoài ra còn mô phỏng các mạch số, mạch tương tự một cách hiệu quả.


Proteus Pro 8.6 là một phần mềm không còn xa lạ gì cho những bạn là dân Kỹ Thuật. Nó giúp bạn có thể mô phỏng mạch điện tử một cách chính xác nhất so với các chương trình tương tự. Bạn có thể thiết kế mạch, nguyên lý hoạt động, chạy thử nghiệm, thiết kế các mạch in với giao diện cực kì trực quan, thao tác dễ dàng chỉ việc kéo thả các linh kiện, kéo thả kết nối các chân kết nối với nhau một cách nhanh chóng.


proteus8 (3)


Các phần mềm trong bộ Proteus Professional 8.6


ISIS Schematic Capture- ISIS đã được nghiên cứu và phát triển trong hơn 12 năm và có hơn 12000 người dùng trên khắp thế giới. Sức mạnh của nó là có thể mô phỏng hoạt động của các hệ vi điều khiển mà không cần thêm phần mềm phụ trợ nào. Sau đó, phần mềm ISIS có thể xuất file sang ARES hoặc các phần mềm vẽ mạch in khác.Trong lĩnh vực giáo dục, ISIS có ưu điểm là hình ảnh mạch điện đẹp, cho phép ta tùy chọn đường nét, màu sắc mạch điện, cũng như thiết kế theo các mạch mẫu (templates).Những khả năng khác của ISIS là:


  • Tự động sắp xếp đường mạch và vẽ điểm giao đường mạch.

  • Chọn đối tượng và thiết lập thông số cho đối tượng dễ dàng

  • Xuất file thống kê linh kiện cho mạch

  • Xuất ra file Netlist tương thích với các chương trình làm mạch in thông dụng.

  • Đối với người thiết kế mạch chuyên nghiệp, ISIS tích hợp nhiều công cụ giúp cho việc quản lý mạch điện lớn, mạch điện có thể lên đến hàng ngàn linh kiện.

  • Thiết kế theo cấu trúc (hierachical design)

  • Khả năng tự động đánh số linh kiện.

proteus8 (2)


proteus8 (1)


Download Proteus Pro 8 gồm 2 bản: Proteus 8 Pro Full và Proteus Pro 8.6 SP2 Build 23525 Portable (nên cài) và hướng dẫn dùng phần mềm Proteus


Download Proteus 8 Pro Full


Hướng dẫn cài đặt Proteus 8

Chạy file setup

Trong bước setup type, chọn Use a locally installed Licence Key

Ấn Next đến khi hiện Licence Manager >> Browse đến file LICENCE.lxk trong thư mục crack >> Install

Chọn Yes, Next…

Cài xong. Copy thư mục “BIN” trong thư mục crack vào thư mục cài đặt mặc định là “C:\Program Files\Labcenter Electronics\Proteus 8 Professional”


Download Proteus Pro 8.6 SP2 Build 23525 Portable


Bản này chỉ cần giải nén và sử dụng (đã crack sẵn) nên tải !


Download hướng dẫn dùng phần mềm Proteus (sinh viên SPKT thực hiện)



Link Source: Proteus Pro 8.6 Full Portable Phần mềm giả lập mạch điện tử
Xem Tiếp

Quan hệ Many To Many Hibernate với Spring Boot

Leave a Comment

Link Source: Quan hệ Many To Many Hibernate với Spring Boot
Thể loại: Java, Lập trình
Tags: Hibernate Framework, Học hành, Lập trình, Spring Framework

Hướng dẫn tạo quan hệ liên kết nhiều nhiều (many to many) trong hibernate spring boot không tạo bản phụ


Many To Many Relationship Mapping with Spring Boot


Trong bài này mình sẽ hướng dẫn dùng annotation manytomany không thêm bảng phụ (trung gian) trong hibernate + spring boot + mysql


manytomany1 (1)


Hướng dẫn dùng annotation manytomany với bảng phụ (trung gian) trong hibernate + spring boot + mysql – đang update 🙂


Quan Hệ Liên Kết Giữa Các Đối Tượng Trong Hibernate


Association Mappings


Sau đây là bốn cách thức biểu diễn các mối quan hệ giữa các đối tượng, nó được biểu diễn theo hướng 1 chiều hoặc 2 chiều.












MAPPING TYPEDESCRIPTION
Many-to-OneMapping mối quan hệ nhiều – một trong Hibernate
One-to-OneMapping mối quan hệ một – một trong Hibernate
One-to-ManyMapping mối quan hệ một – nhiều trong Hibernate
Many-to-ManyMapping mối quan hệ nhiều – nhiều trong Hibernate

Hướng dẫn quan hệ nhiều nhiều (many to many) hibernate jpa với Spring Boot Project


Các công nghệ sử dụng:


  • Spring Boot

  • MySQL

  • Hibernate JPA (Spring Data)

Các công cụ phần mềm cần:


  • JDK 1.8 or later

  • Maven 3 or later

  • MySQL Server 5.6 or later

  • Eclipse + Plugin spring suite tool

Tạo bảng trong cơ sở dữ liệu


Trong bài này chúng ta sẽ có 3 bảng trong cơ sở dữ liệu: book, publisher, book_publisher. Nhưng bên java chúng ta chỉ cần 2 entity là book.javapublisher.java thôi.


manytomany1 (1)


Lược đồ cơ sở dữ liệu như bạn thấy bảng phụ chỉ có 2 khóa chính của 2 bản chính. Nếu thêm 1 field vào bản phụ này thì sao? Khi đó bạn không thể làm theo hướng dẫn này mà bạn phải làm theo Hướng dẫn dùng annotation manytomany với bảng phụ (trung gian) trong hibernate + spring boot + mysql


Database jpa_manytomany code:


CREATE DATABASE IF NOT EXISTS `jpa_manytomany`;
USE `jpa_manytomany`;

DROP TABLE IF EXISTS `book`;
CREATE TABLE `book` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS `publisher`;
CREATE TABLE `publisher` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8;


DROP TABLE IF EXISTS `book_publisher`;
CREATE TABLE `book_publisher` (
`book_id` int(10) unsigned NOT NULL,
`publisher_id` int(10) unsigned NOT NULL,
PRIMARY KEY (`book_id`,`publisher_id`),
KEY `fk_bookpublisher_publisher_idx` (`publisher_id`),
CONSTRAINT `fk_bookpublisher_book` FOREIGN KEY (`book_id`) REFERENCES `book` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `fk_bookpublisher_publisher` FOREIGN KEY (`publisher_id`) REFERENCES `publisher` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Cấu trúc project spring boot


manytomany1 (6)


Vào phần chính nào, mình dùng Eclipse + plugin Spring suite Tool để tạo project spring boot nhanh nhất.


Tạo project Spring Starter Project như hình


manytomany1 (4)


Sau đó thiết lập project


manytomany1 (3)manytomany1 (2)


Sau khi tạo xong bạn sẽ thấy có class Manytomany1Application.java và file pom.xml


Nội dung file Manytomany1Application.java


package com.qlam.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Manytomany1Application

public static void main(String[] args)
SpringApplication.run(Manytomany1Application.class, args);


 


Nội dung file pom.xml


<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>com.qlam</groupId>
<artifactId>manytomany1</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>

<name>manytomany1</name>
<description>Demo project for Spring Boot</description>

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.7.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>


</project>

Khai báo các thực thể JPA Entity tức là các class trong package model


Tạo package com.qlam.demo.model


Sau đó bạn tạo class Book.java như bên dưới:


package com.qlam.demo.model;

import javax.persistence.*;
import java.util.Set;

@Entity
public class Book
private int id;
private String name;
private Set<Publisher> publishers;

public Book()



public Book(String name)
this.name = name;


public Book(String name, Set<Publisher> publishers)
this.name = name;
this.publishers = publishers;


@Id
@GeneratedValue(strategy = GenerationType.AUTO)
public int getId()
return id;


public void setId(int id)
this.id = id;


public String getName()
return name;


public void setName(String name)
this.name = name;


@ManyToMany(cascade = CascadeType.ALL)
@JoinTable(name = "book_publisher", joinColumns = @JoinColumn(name = "book_id", referencedColumnName = "id"), inverseJoinColumns = @JoinColumn(name = "publisher_id", referencedColumnName = "id"))
public Set<Publisher> getPublishers()
return publishers;


public void setPublishers(Set<Publisher> publishers)
this.publishers = publishers;


@Override
public String toString()
String result = String.format(
"Book [id=%d, name='%s']%n",
id, name);
if (publishers != null)
for(Publisher publisher : publishers)
result += String.format(
"Publisher[id=%d, name='%s']%n",
publisher.getId(), publisher.getName());



return result;


Tiếp theo bạn tạo class Publisher.java cũng nằm trong package com.qlam.demo.model


package com.qlam.demo.model;

import javax.persistence.*;
import java.util.Set;

@Entity
public class Publisher
private int id;
private String name;
private Set<Book> books;

public Publisher()



public Publisher(String name)
this.name = name;


public Publisher(String name, Set<Book> books)
this.name = name;
this.books = books;


@Id
@GeneratedValue(strategy = GenerationType.AUTO)
public int getId()
return id;


public void setId(int id)
this.id = id;


public String getName()
return name;


public void setName(String name)
this.name = name;


@ManyToMany(mappedBy = "publishers")
public Set<Book> getBooks()
return books;


public void setBooks(Set<Book> books)
this.books = books;


Mình sẽ giải thích một chút nhá!


@Entity khai báo đây là thực thể tương ứng với bảng trong cơ sở dữ liệu.


@Table dùng để maps các class java với bảng trong cơ sở dữ liệu theo tên. Ví dụ:


@Table(name = "bai")
public class Bai

Nếu bạn không khai báo tên trong @Table thì nó ngầm định bạn dùng tên bảng giống tên class.


@Id khai báo này cho biết thuộc tính này là khóa chính.


@Column dùng để maps với các field trong bảng cơ sở dữ liệu. Nếu bạn để trống, không khai báo thì nó ngầm định tên thuộc tính trong class tương ứng với tên field trong bảng.


@ManyToMany khai báo quan hệ many-to-many giữa 2 thực thể. Ví dụ cụ thể: quan hệ nhiều nhiều giữa book và publisher, nên trong class Book sẽ có danh sách các publisher và ngược lại.


@JoinTable thường đi chung với khai báo quan hệ liên kết Association Mappings. Được hiểu là kết với bảng nào. Ví dụ bảng book sẽ kết với bảng book_publisher qua cột ( @JoinColumn ) book_id và tham chiếu cột còn lại là: publisher_id


@JoinTable(name = "book_publisher", joinColumns = @JoinColumn(name = "book_id", referencedColumnName = "id"), inverseJoinColumns = @JoinColumn(name = "publisher_id", referencedColumnName = "id"))

mappedBy được dùng bên bảng còn lại là publisher nói rằng sẽ maps với thuộc tính publishers bên bảng book. Ví dụ bên dưới!


@ManyToMany(mappedBy = "publishers")
public Set<Book> getBooks()
return books;

Tạo Spring Data JPA Repository


Sau khi tạo xong các class trong Model, chúng ta sẽ tạo Repository cho các class tương ứng. Ở đây mình làm nhanh để tập trung vào phần hibernate many to many nên không có class Service hay Implement nhá!


Spring Data JPA chứa một số kho tích hợp để thực hiện một số chức năng phổ biến để làm việc nhanh với cơ sở dữ liệu như: findOne, findAll, save, …


Tạo class BookRepository.java trong package com.qlam.demo.repository


package com.qlam.demo.repository;

import org.springframework.data.jpa.repository.JpaRepository;
import com.qlam.demo.model.Book;

public interface BookRepository extends JpaRepository<Book, Integer>

Tiếp tục tạo class PublisherRepository.java trong package com.qlam.demo.repository


package com.qlam.demo.repository;

import org.springframework.data.jpa.repository.JpaRepository;

import com.qlam.demo.model.Publisher;

public interface PublisherRepository extends JpaRepository<Publisher, Long>

Khai báo chuỗi kết nối trong file Application Properties


Trong file application.properties thêm các đoạn code kết nối với mysql


spring.datasource.url=jdbc:mysql://localhost/jpa_manytomany
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

spring.jpa.show-sql=true
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect

Bạn cần lưu ý 3 dòng đầu tùy chỉnh lại cho đúng với kết nối mysql của bạn.


Chạy thử chương trình


Trong file Manytomany1ApplicationTests.java trong phần src/test/resources mình tạo một số đối tượng để test thử như bên dưới.


package com.qlam.demo;

import java.util.HashSet;

import javax.transaction.Transactional;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

import com.qlam.demo.model.Book;
import com.qlam.demo.model.Publisher;
import com.qlam.demo.repository.BookRepository;
import com.qlam.demo.repository.PublisherRepository;

@RunWith(SpringRunner.class)
@SpringBootTest
public class Manytomany1ApplicationTests
private static final Logger logger = LoggerFactory.getLogger(Manytomany1Application.class);
@Autowired
private BookRepository bookRepository;

@Autowired
private PublisherRepository publisherRepository;

@Test
@Transactional
public void contextLoads()
// save a couple of books
Publisher publisherA = new Publisher("Publisher A");
Publisher publisherB = new Publisher("Publisher B");
Publisher publisherC = new Publisher("Publisher C");

bookRepository.save(new HashSet<Book>()

add(new Book("Book A", new HashSet<Publisher>()

add(publisherA);
add(publisherB);

));

add(new Book("Book B", new HashSet<Publisher>()

add(publisherA);
add(publisherC);

));

);

// fetch all books
for (Book book : bookRepository.findAll())
logger.info("\n" + book.toString());


// save a couple of publishers
Book bookA = new Book("Book A");
Book bookB = new Book("Book B");

publisherRepository.save(new HashSet<Publisher>()

add(new Publisher("Publisher A", new HashSet<Book>()

add(bookA);
add(bookB);

));

add(new Publisher("Publisher B", new HashSet<Book>()

add(bookA);
add(bookB);

));

);

// fetch all publishers
for (Publisher publisher : publisherRepository.findAll())
logger.info("\n"+publisher.toString());





Để chạy project spring boot bạn chọn theo hình dưới!


manytomany1 (5)


Kết quả chạy, mình chỉ copy phần chính thôi!


2017-10-02 15:17:52.498 INFO 11172 --- [ main] c.qlam.demo.Manytomany1ApplicationTests : Started Manytomany1ApplicationTests in 7.008 seconds (JVM running for 8.777)
2017-10-02 15:17:52.551 INFO 11172 --- [ main] o.s.t.c.transaction.TransactionContext : Began transaction (1) for test context [DefaultTestContext@2698dc7 testClass = Manytomany1ApplicationTests, testInstance = com.qlam.demo.Manytomany1ApplicationTests@6c0b51da, testMethod = contextLoads@Manytomany1ApplicationTests, testException = [null], mergedContextConfiguration = [WebMergedContextConfiguration@43d7741f testClass = Manytomany1ApplicationTests, locations = '', classes = 'class com.qlam.demo.Manytomany1Application', contextInitializerClasses = '[]', activeProfiles = '', propertySourceLocations = '', propertySourceProperties = 'org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true', contextCustomizers = set[org.springframework.boot.test.context.SpringBootTestContextCustomizer@3bfdc050, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@5c3bd550, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@6a4f787b, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@3fee9989], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]]]; transaction manager [org.springframework.orm.jpa.JpaTransactionManager@5b0dbfb]; rollback [true]
Hibernate: insert into book (name) values (?)
Hibernate: insert into publisher (name) values (?)
Hibernate: insert into publisher (name) values (?)
Hibernate: insert into book (name) values (?)
Hibernate: insert into publisher (name) values (?)
2017-10-02 15:17:53.386 INFO 11172 --- [ main] o.h.h.i.QueryTranslatorFactoryInitiator : HHH000397: Using ASTQueryTranslatorFactory
Hibernate: select book0_.id as id1_0_, book0_.name as name2_0_ from book book0_
Hibernate: select publishers0_.book_id as book_id1_1_0_, publishers0_.publisher_id as publishe2_1_0_, publisher1_.id as id1_2_1_, publisher1_.name as name2_2_1_ from book_publisher publishers0_ inner join publisher publisher1_ on publishers0_.publisher_id=publisher1_.id where publishers0_.book_id=?
2017-10-02 15:17:53.887 INFO 11172 --- [ main] com.qlam.demo.Manytomany1Application :
Book [id=15, name='Book B']
Publisher[id=19, name='Publisher C']
Publisher[id=20, name='Publisher A']

Hibernate: select publishers0_.book_id as book_id1_1_0_, publishers0_.publisher_id as publishe2_1_0_, publisher1_.id as id1_2_1_, publisher1_.name as name2_2_1_ from book_publisher publishers0_ inner join publisher publisher1_ on publishers0_.publisher_id=publisher1_.id where publishers0_.book_id=?
2017-10-02 15:17:53.900 INFO 11172 --- [ main] com.qlam.demo.Manytomany1Application :
Book [id=16, name='Book A']
Publisher[id=21, name='Publisher B']
Publisher[id=20, name='Publisher A']

2017-10-02 15:17:53.900 INFO 11172 --- [ main] com.qlam.demo.Manytomany1Application :
Book [id=17, name='Book A']
Publisher[id=22, name='Publisher B']
Publisher[id=23, name='Publisher A']

2017-10-02 15:17:53.901 INFO 11172 --- [ main] com.qlam.demo.Manytomany1Application :
Book [id=18, name='Book B']
Publisher[id=24, name='Publisher C']
Publisher[id=23, name='Publisher A']

Hibernate: insert into publisher (name) values (?)
Hibernate: insert into publisher (name) values (?)
Hibernate: select publisher0_.id as id1_2_, publisher0_.name as name2_2_ from publisher publisher0_
2017-10-02 15:17:53.925 INFO 11172 --- [ main] com.qlam.demo.Manytomany1Application :
com.qlam.demo.model.Publisher@79ab97fd

Video chi tiết Hướng dẫn annotation many to many Hibernate Spring Boot không bản phụ



Xong rồi, qua bài Hướng dẫn tạo quan hệ liên kết nhiều nhiều (many to many) trong hibernate spring boot không tạo bản phụ bạn đã biết cách dùng project spring boot với annotation manytomany trong hibernate. Trong bài tiếp theo mình sẽ Hướng dẫn dùng annotation manytomany với bảng phụ (trung gian) trong hibernate + spring boot + mysql – đang update!



Link Source: Quan hệ Many To Many Hibernate với Spring Boot
Xem Tiếp