جاوا و تکنولوژی های آن

java programming language

در این وبلاگ به بررسی نکات موجود در جاوا و تکنولوژی های آن می پردازیم

طبقه بندی موضوعی


در این بخش قدری به بررسی دیتابیس H2 به همراه Spring Boot میپردازیم


ابتدا وابستگی ها را اضافه میکنیم :

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
    <version>2.1.4.RELEASE</version>
</dependency>
<dependency>
    <groupId>com.h2database</groupId>
    <artifactId>h2</artifactId>
    <scope>runtime</scope>
    <version>1.4.199</version>
</dependency>




تنظیمات H2 بوسیله Spring Boot :


به صورت پیش فرض Spring Boot دیتابیس H2 را در حالت In-Memory همراه با username بنام sa و بدون password تنظیم میکند 

و اگر بخواهیم اطلاعات اتصال را تغییر دهیم در فایل application.properties آنها را وارد میکنیم :


spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=password
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect

در حالت in-memory با restart شدن اپلیکیشن دیتا پاک شده و دوباره دیتابیس ایجاد میشود و برای اینکه در فایلی ذخیره کنیم و بعدا هم قابل بازیابی باشد پارامتر زیر را وارد میکنیم :


spring.datasource.url=jdbc:h2:file:/data/demo



عملیات در H2 مشابه دیگر دیتابیس های SQL base میباشد 


ما میتوانیم در مسیر src/main/resources یک فایل با نام data.sql ایجاد کنیم و دستورات ساخت و ایجاد جداول و یا رکورد های اولیه را وارد کنیم Spring هر باری که اپلیکیشن را اجرا میکند این فایل را میخواند و دستورات آنرا اجرا میکند، این برای حالت تست خیلی کاربردی است 




دسترسی به کنسول H2 :


بصورت پیش فرض نمایش کنسول در Spring فعال نیست و برای فعال شدن کافی است پارامتر زیر را در application.properties وارد کنیم :

spring.h2.console.enabled=true

بعد از این با اجرا شدن application در مرورگر آدرس http://localhost:8080/h2-console کنسول قابل مشاهده خواهد بود 


علاوه بر پارامتر بالا میتوانیم پارامتر های دیگری را برای کنسول بکار ببریم :

spring.h2.console.path=/h2-console
spring.h2.console.settings.trace=false
spring.h2.console.settings.web-allow-others=false

با path آدرس url نمایش کنسول را ست کردیم 

با false کردن spring.h2.console.settings.trace از trace output جلوگیری میکنیم

و با false کردن spring.h2.console.settings.web-allow-others مانع دسترسی remote میشویم 







نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی