>웹 프론트엔드 >프런트엔드 Q&A >jquery로 데이터베이스에 접근하는 방법

jquery로 데이터베이스에 접근하는 방법

PHPz
PHPz원래의
2023-05-28 13:35:10972검색

jQuery는 페이지에서 HTML 이벤트 처리, DOM 조작, AJAX 호출 등과 같은 작업을 단순화하는 데 사용되는 인기 있는 JavaScript 라이브러리입니다. jQuery 자체는 데이터베이스에 대한 직접적인 액세스를 제공하지 않지만 다른 JavaScript 라이브러리를 참조하고 서버 측 스크립팅 언어를 사용하여 데이터베이스에 액세스할 수 있습니다.

1. AJAX를 사용하여 백엔드 인터페이스 호출

AJAX 기술을 사용하면 백엔드 인터페이스를 호출한 다음 이러한 인터페이스를 통해 데이터베이스에 액세스할 수 있습니다. AJAX를 사용하는 경우 호출 매개변수를 백엔드로 전송하고 백엔드 처리가 완료될 때까지 기다린 후 데이터를 프런트엔드로 반환한 다음 jQuery를 통해 데이터를 페이지에 렌더링해야 합니다.

백엔드에서는 PHP, Node.js, Python 및 기타 언어의 데이터베이스 액세스 라이브러리를 사용하여 데이터베이스 액세스 작업을 처리할 수 있습니다. 예를 들어 Node.js의 mongoose 라이브러리를 사용하여 MongoDB 데이터베이스에 액세스하고 데이터를 JSON 형식으로 프런트 엔드에 반환합니다.

// 后端代码
var mongoose = require('mongoose')
var db = mongoose.createConnection('mongodb://localhost/test')
var User = db.model('User', {username: String, age: Number})

app.get('/user', function(req, res) {
    User.find({}).exec(function(err, result) {
        if (err) throw err
        res.json(result)
    })
})

보시다시피 위 코드는 Node.js의 Express 프레임워크를 사용하여 경로 및 리스너 '/user' 경로를 사용하면 요청이 오면 Mongoose 라이브러리를 통해 MongoDB에 액세스하고 모든 사용자 데이터를 찾은 다음 res.json 메서드를 사용하여 이를 프런트 엔드에 반환합니다.

프런트 엔드에서는 jQuery를 사용하여 AJAX 요청을 시작하고 반환된 데이터를 페이지에 렌더링할 수 있습니다. 예:

// 前端代码
$.ajax({
    url: '/user',
    type: 'GET',
    success: function(data) {
        // 渲染数据
        var html = ''
        for (var i = 0; i < data.length; i++) {
            var user = data[i]
            html += '<tr><td>' + user.username + '</td><td>' + user.age + '</td></tr>'
        }
        $('.user-table').append(html)
    }
})

위의 jQuery 코드에서 AJAX는 백엔드 인터페이스를 호출하고 모든 사용자 데이터를 읽은 다음 데이터를 페이지의 테이블로 렌더링하는 데 사용됩니다.

2. jQuery 플러그인 사용

AJAX 기술 외에도 데이터베이스에 직접 액세스할 수 있는 일부 jQuery 플러그인도 있습니다. 예를 들어 DataTabels 플러그인을 사용하여 테이블 형식 데이터를 처리하고 데이터베이스의 데이터에 직접 액세스할 수 있습니다.

DataTables를 사용하는 경우 백엔드에서 데이터를 가져온 다음 클라이언트에서 페이징, 정렬, 검색과 같은 작업을 수행해야 합니다. 서버에서 반환된 JSON 데이터를 DataTables의 데이터 속성에 할당한 다음 페이지의 DataTables를 통해 데이터를 렌더링할 수 있습니다.

다음은 DataTables를 사용하여 테이블을 렌더링하는 샘플 코드입니다.

// 前端代码
$(document).ready(function() {
    $('#user-table').DataTable({
        "processing": true,
        "serverSide": true,
        "ajax": {
            "url": "/user",
            "type": "POST"
        },
        "columns": [
            { "data": "username" },
            { "data": "age" },
        ]
    })
})

3. ORM 프레임워크를 사용하세요

ORM(Object-Relational Mapping) 프레임워크를 사용하면 데이터베이스를 직접 운영하고 전송함으로써 발생하는 일련의 문제를 피할 수 있습니다. 백엔드까지 데이터베이스를 운영하는 작업입니다. ORM 프레임워크는 데이터베이스를 직접 운영하고 데이터를 객체 형태로 캡슐화하여 프런트 엔드에서 데이터 렌더링을 용이하게 할 수 있습니다.

Node.js에서는 Sequelize 모듈을 사용하여 ORM 기능을 구현할 수 있습니다. Sequelize를 사용하면 모델, 데이터 마이그레이션, 쿼리 및 기타 작업을 생성할 수 있으므로 사용자는 데이터에 대한 CRUD(생성, 읽기, 업데이트, 삭제) 작업을 쉽게 수행할 수 있습니다.

다음은 Sequelize를 사용하여 ORM을 구현하는 샘플 코드입니다:

// 后端代码
const Sequelize = require('sequelize')
const sequelize = new Sequelize('mysql://root:123456@localhost:3306/test')

const User = sequelize.define('user', {
    username: Sequelize.STRING,
    age: Sequelize.INTEGER
})

app.get('/users', async (req, res) => {
    const users = await User.findAll()
    res.json(users)
})

// 前端代码
$.ajax({
    url: '/users',
    type: 'GET',
    success: function(data) {
        // 渲染数据
        var html = ''
        for (var i = 0; i < data.length; i++) {
            var user = data[i]
            html += '<tr><td>' + user.username + '</td><td>' + user.age + '</td></tr>'
        }
        $('.user-table').append(html)
    }
})

IV.요약

실제 프로젝트에서 데이터베이스에 액세스하려면 일반적으로 백엔드 작업이 필요합니다. AJAX, jQuery 플러그인을 통해 백엔드에서 보다 쉽게 ​​데이터를 얻을 수 있으며, ORM 프레임워크를 사용할 경우 객체 조작만으로 CRUD 작업을 수행할 수 있어 데이터베이스를 직접 운영할 때 발생하는 문제가 줄어들고 유지 관리가 용이해집니다. 개발자의.

위 내용은 jquery로 데이터베이스에 접근하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.